/* AQUAPHOR Presentation Studio v2 — Swiss editorial interface */
@font-face{font-family:'AtypLocal';src:local('Atyp Text Light'),local('AtypText-Light');font-weight:300;font-style:normal;font-display:swap}
@font-face{font-family:'AtypLocal';src:local('Atyp Text Semibold'),local('AtypText-Semibold');font-weight:600;font-style:normal;font-display:swap}
:root{--font:'AtypStudio','AtypLocal','Helvetica Neue',Arial,sans-serif;--navy:#101663;--blue:#1d55b5;--cyan:#14b4e9;--magenta:#e92d78;--ink:#15233b;--muted:#728198;--gray:#e8edf3;--white:#ffffff;--line:#e4e9f0;--radius:13px;font-family:var(--font);font-weight:300;font-synthesis:none;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;font-feature-settings:'ss06' 1,'kern' 1,'liga' 1}
*{box-sizing:border-box}
html,body,#root{height:100%;min-height:0;margin:0}
body{min-width:320px;overflow:hidden}
button,input,textarea,select{font-family:var(--font);font-weight:300;letter-spacing:0;font-feature-settings:'ss06' 1,'kern' 1,'liga' 1}
button{cursor:pointer}
button:disabled{opacity:.46;cursor:not-allowed}
button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid #309def;outline-offset:2px}
.studio-app{--page:#f2f5f8;--panel:#fff;--panel2:#f8fafd;--panel3:#f1f5f9;--text:#182947;--sub:#8491a3;--hair:#e4eaf0;--input:#f6f8fb;--shadow:0 10px 40px rgba(21,42,73,.09);height:100dvh;min-height:0;display:flex;overflow:hidden;background:var(--page);color:var(--text);transition:background .18s,color .18s}
.studio-app.theme-dark{--page:#0d1421;--panel:#141e2e;--panel2:#1a2537;--panel3:#1d2b40;--text:#eff5fb;--sub:#8d9bb0;--hair:#293a50;--input:#1a2739;--shadow:0 12px 38px rgba(0,0,0,.22)}
.control-panel{width:290px;flex:0 0 290px;height:100dvh;min-height:0;background:var(--panel);border-right:1px solid var(--hair);display:flex;flex-direction:column;z-index:30}
.panel-top{padding:17px 18px 15px;min-height:70px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--hair);flex:0 0 auto}
.studio-mark{display:flex;align-items:center;gap:11px;min-width:0}
.studio-mark-icon{display:flex;width:36px;height:36px;align-items:center;justify-content:center;background:#101663;border-radius:10px;color:#fff}
.studio-mark strong{display:block;font-size:14px;line-height:1.1;font-weight:600;letter-spacing:.005em;color:var(--text)}
.studio-mark span{display:block;margin-top:5px;color:var(--sub);font-size:8px;letter-spacing:.14em;font-weight:600}
.branding-compact{padding:17px 18px 15px;border-bottom:1px solid var(--hair)}
.branding-row{display:flex;align-items:center;justify-content:space-between;gap:12px}
.sidebar-caption{display:block;color:var(--sub);font-size:10px;letter-spacing:.09em;font-weight:600;line-height:1.35}
.brand-logo-choices,.theme-pair{display:flex;border-radius:9px;background:var(--input);padding:3px;gap:3px;border:1px solid var(--hair)}
.brand-logo-choices button{border:0;color:var(--sub);background:none;padding:7px 15px;border-radius:6px;font-size:11px;line-height:1.2;font-weight:600}
.brand-logo-choices button.selected,.theme-pair button.selected{background:#1d55b5;color:#fff}
.panel-tabs{flex:0 0 auto;display:grid;grid-template-columns:repeat(3,1fr);padding:8px 13px 0;border-bottom:1px solid var(--hair);gap:4px}
.panel-tabs button{display:flex;justify-content:center;align-items:center;gap:6px;border:0;border-bottom:2px solid transparent;background:transparent;color:var(--sub);font-size:11px;font-weight:600;padding:12px 1px 11px;white-space:nowrap}
.panel-tabs button.active{color:#3579e7;border-bottom-color:#3579e7}
.panel-scroll{padding:0 18px 28px;flex:1;min-height:0;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#8299ae66 transparent}
.compact-section{padding:21px 0 12px;display:flex;flex-direction:column;gap:0}
.compact-header{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-bottom:16px}
.compact-header h2{font-weight:600;font-size:19px;line-height:1.15;letter-spacing:-.035em;color:var(--text);margin:0}
.hint-light{font-size:9px;letter-spacing:.075em;color:var(--sub);font-weight:600;white-space:nowrap}
.ai-connection{min-height:39px;display:flex;align-items:center;gap:8px;border:1px solid var(--hair);background:var(--panel2);border-radius:8px;padding:3px 6px 3px 11px;font-size:11px;font-weight:600;color:var(--sub);margin-bottom:20px}
.ai-connection--ready{color:#298b71}.theme-dark .ai-connection--ready{color:#66dbb3}
.ai-connection--missing,.ai-connection--offline{color:#cc6a44}
.connection-dot{display:block;flex:0 0 7px;height:7px;border-radius:50%;background:#b1c1d0}
.ai-connection--ready .connection-dot{background:#39b48c}.ai-connection--missing .connection-dot,.ai-connection--offline .connection-dot{background:#e88862}
.ai-connection>span:nth-child(2){flex:1}
.ai-connection .compact-icon-btn{min-width:28px;min-height:26px}
.diagnostic-note{font-size:11px;line-height:1.55;color:var(--text);border-left:2px solid #de9272;padding:2px 0 2px 11px;margin:-9px 0 18px}
.label-gap{margin:0 0 9px}
.prompt-area{display:block;resize:vertical;width:100%;min-height:130px;max-height:300px;background:var(--input);border:1px solid var(--hair);border-radius:10px;padding:14px;font-size:13px;line-height:1.5;color:var(--text)}
.prompt-area::placeholder,.basic-input::placeholder{color:var(--sub)}
.settings-two{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:15px 0}
.settings-two label{min-width:0}.settings-two .sidebar-caption{margin:0 0 8px}
.basic-input{width:100%;min-width:0;height:40px;line-height:1.2;border-radius:8px;border:1px solid var(--hair);background:var(--input);color:var(--text);padding:0 10px;font-size:12px;outline:0}
.compact-section>select.basic-input{margin-bottom:13px}
.minimal-check{display:flex;gap:9px;align-items:center;margin:3px 0 19px;font-size:12px;color:var(--text);line-height:1.3;cursor:pointer}
.minimal-check input{accent-color:#2864cc;width:14px;height:14px;margin:0}
.generate-button{border:0;color:white;background:#2159b7;border-radius:9px;min-height:46px;padding:11px 13px;display:flex;align-items:center;gap:10px;font-size:13px;font-weight:600;width:100%;transition:background .16s}
.generate-button span{flex:1;text-align:left;font-weight:600}
.generate-button:hover:not(:disabled){background:#11418f}
.quiet-note{color:var(--sub);font-size:11px;line-height:1.5;margin:12px 0 0}
.section-rule{height:1px;background:var(--hair);margin:22px 0}
.layout-grid-compact{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.layout-item{background:var(--panel2);border:1px solid var(--hair);border-radius:10px;min-height:67px;display:flex;align-items:center;gap:9px;padding:10px;text-align:left;font-size:11px;line-height:1.25;color:var(--text)}
.layout-item.selected{border-color:#2d78dc;background:var(--panel3);box-shadow:inset 0 0 0 1px #2d78dc}
.mini-layout{width:38px;height:24px;background:#eef1f6;border:1px solid #cbd5e1;border-radius:4px;position:relative;display:inline-block;flex:0 0 38px;overflow:hidden}
.mini-layout i,.mini-layout b,.mini-layout em{position:absolute;display:block;background:#688ab5;border-radius:1px}
.mini-layout i{top:5px;left:5px;width:13px;height:3px}.mini-layout b{top:11px;left:5px;width:11px;height:3px}.mini-layout em{right:4px;top:4px;width:13px;height:16px;background:#c4cedb}
.mini-layout--cover,.mini-layout--closing{background:linear-gradient(130deg,#34bef6,#073b98)}
.mini-layout--cover i,.mini-layout--cover b,.mini-layout--closing i,.mini-layout--closing b{background:#fff}.mini-layout--cover em,.mini-layout--closing em{display:none}
.two-actions{display:flex;gap:9px;margin-top:13px}
.outlined-button{display:flex;justify-content:center;align-items:center;gap:7px;min-width:0;flex:1;background:var(--panel2);border:1px solid var(--hair);border-radius:8px;padding:11px 8px;color:var(--text);font-size:11px;line-height:1.2;font-weight:600;white-space:nowrap}
.outlined-button:hover:not(:disabled){border-color:#3e8add}
.text-action{background:transparent;border:0;color:#b26b7d;text-align:left;margin-top:12px;padding:5px 0;font-size:11px}
.theme-pair{margin-bottom:5px}.theme-pair button{flex:1;border:0;color:var(--text);background:transparent;border-radius:7px;padding:11px 5px;font-size:12px}
.panel-footer{height:40px;border-top:1px solid var(--hair);display:flex;align-items:center;gap:8px;padding:0 18px;font-size:9px;letter-spacing:.11em;font-weight:600;color:var(--sub);flex:0 0 auto}
.footer-dot{width:6px;height:6px;border-radius:50%;background:#31bb91}.panel-version{margin-left:auto}
.main-area{flex:1;min-width:0;min-height:0;height:100dvh;display:flex;flex-direction:column}
.topbar{height:70px;flex:0 0 70px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 27px;border-bottom:1px solid var(--hair);background:var(--panel)}
.topbar-left,.topbar-actions{display:flex;align-items:center;gap:8px;min-width:0}
.workspace-name{font-size:15px;font-weight:600;color:var(--text);white-space:nowrap;letter-spacing:-.025em}
.top-counter{font-size:11px;color:var(--sub);margin-left:10px;white-space:nowrap}
.compact-icon-btn{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;min-width:32px;border-radius:8px;border:0;background:transparent;color:var(--sub);padding:6px}
.compact-icon-btn:hover:not(:disabled){background:var(--panel3);color:var(--text)}
.theme-switch{border:1px solid var(--hair);margin-right:7px;background:var(--panel2)}
.export-button{display:inline-flex;align-items:center;justify-content:center;gap:9px;background:#101663;border:1px solid #101663;color:#fff;border-radius:9px;padding:10px 14px;font-size:12px;font-weight:600;margin-left:8px;white-space:nowrap}
.export-button span{font-weight:600}
.export-button:hover{background:#24349c}
.workbench{display:flex;flex:1;min-height:0;overflow:hidden}
.filmstrip{width:196px;flex:0 0 196px;display:flex;flex-direction:column;min-height:0;background:var(--panel2);border-right:1px solid var(--hair);overflow:hidden}
.filmstrip-heading{display:flex;align-items:center;justify-content:space-between;flex:0 0 48px;padding:0 14px;font-size:10px;letter-spacing:.13em;font-weight:600;color:var(--sub);border-bottom:1px solid var(--hair)}
.filmstrip-scroll{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;padding:15px 12px 11px;scrollbar-width:thin;scrollbar-color:#9aaec488 transparent;overscroll-behavior:contain;scroll-snap-type:y proximity}
.thumbs{display:flex;flex-direction:column;gap:10px}
.thumb-card{padding:4px;border:1.5px solid transparent;border-radius:10px;position:relative;scroll-snap-align:start;min-width:0}
.thumb-card:hover{background:var(--panel3)}
.thumb-card--active{background:rgba(35,101,211,.095);border-color:#2877d6}
.thumbnail-button{display:block;text-align:left;background:none;border:0;color:inherit;padding:0;width:100%}
.thumbnail-canvas{width:100%;aspect-ratio:16/9;overflow:hidden;background:#fff;border:1px solid var(--hair);border-radius:5px;box-shadow:0 2px 8px rgba(0,0,0,.055)}
.thumbnail-caption{display:flex;align-items:baseline;gap:8px;padding:10px 3px 2px;min-width:0}
.thumbnail-number{font-size:10px;font-weight:600;color:var(--sub)}
.thumbnail-title{font-size:11px;font-weight:600;color:var(--text);overflow:hidden;white-space:nowrap;text-overflow:ellipsis;min-width:0}
.thumb-card--active .thumbnail-number,.thumb-card--active .thumbnail-title{color:#3279d7}
.thumbnail-actions{display:none;position:absolute;top:9px;right:9px;background:#fff;border-radius:6px;padding:2px;box-shadow:0 3px 10px #0002}
.thumbnail-actions .compact-icon-btn{width:25px;height:25px;min-width:25px;padding:4px;color:#41516a}
.thumbnail-actions svg{width:13px;height:13px}
.thumb-card:hover .thumbnail-actions,.thumb-card:focus-within .thumbnail-actions{display:flex}
.filmstrip-bottom{height:71px;flex:0 0 71px;padding:12px;background:var(--panel2);border-top:1px solid var(--hair)}
.thumb-add{width:100%;height:100%;margin:0;display:flex;justify-content:center;align-items:center;gap:8px;border:1px dashed #8baad1;border-radius:9px;color:#346bb4;background:var(--panel);font-weight:600;font-size:11px}
.thumb-add:hover{background:var(--panel3)}
.editor-area{flex:1;min-height:0;min-width:0;padding:24px 26px 15px;display:flex;flex-direction:column;gap:0;overflow:hidden}
.editor-meta{display:flex;justify-content:space-between;align-items:end;gap:12px;min-height:57px;flex:0 0 57px;margin-bottom:16px}
.editor-kicker{font-size:9px;letter-spacing:.16em;font-weight:600;color:var(--sub)}
.editor-heading h1{font-size:26px;line-height:1.2;margin:4px 0 0;letter-spacing:-.044em;font-weight:600;color:var(--text)}
.editor-heading h1 span{font-weight:300;color:var(--sub)}
.editor-controls{display:flex;align-items:center;gap:5px}
.zoom-info{font-size:11px;color:var(--sub);min-width:42px;text-align:center}
.editor-stage{flex:1;min-height:0;min-width:0;border:1px solid var(--hair);border-radius:12px;background:var(--panel3);background-image:radial-gradient(circle,var(--hair) .7px,transparent .9px);background-size:18px 18px;display:flex;align-items:center;justify-content:center;overflow:auto;padding:21px;overscroll-behavior:contain}
.stage-canvas-container{flex:0 0 auto;min-width:0;min-height:0;aspect-ratio:16/9;max-height:100%;filter:drop-shadow(0 12px 21px rgba(13,30,59,.13))}
.stage-canvas-container>.slide-canvas{border-radius:3px;box-shadow:none}
.under-stage{min-height:52px;flex:0 0 52px;border-bottom:1px solid var(--hair);display:flex;align-items:center;justify-content:space-between;gap:14px}
.under-stage-left,.under-stage-actions{display:flex;align-items:center;gap:6px;min-width:0}
.active-layout-text{font-weight:600;color:var(--text);font-size:12px;white-space:nowrap}
.toolbar-text-btn{border:0;background:transparent;color:#3476cf;display:flex;align-items:center;gap:6px;font-size:11px;padding:8px}
.under-divider{width:1px;height:20px;background:var(--hair);margin:0 3px}
.editor-tip{height:27px;flex:0 0 27px;display:flex;align-items:end;gap:6px;color:var(--sub);font-size:10px;line-height:1}
.toast{position:fixed;bottom:20px;right:20px;z-index:100;max-width:min(420px,calc(100vw - 32px));padding:12px 12px 12px 14px;background:var(--panel);border:1px solid var(--hair);border-left:3px solid #2a9a82;box-shadow:var(--shadow);border-radius:9px;display:flex;align-items:center;gap:10px;color:var(--text);font-size:12px;line-height:1.5}
.toast--error{border-left-color:#e57570}.toast>span{flex:1}.toast .compact-icon-btn{color:var(--sub)}
.panel-mobile-close,.mobile-menu-toggle,.mobile-scrim{display:none!important}
.spin{animation:spinv2 .8s linear infinite}@keyframes spinv2{to{transform:rotate(360deg)}}
.slide-canvas { position: relative; width: 100%; aspect-ratio: 16 / 9; background: #fff; overflow: hidden; isolation: isolate; container-type: inline-size; color: #182b41; user-select: none; }
.slide-canvas * { font-feature-settings: 'ss06' 1, 'kern' 1, 'liga' 1; }
.slide-canvas--thumbnail { pointer-events: none; }
.slide-canvas .editable { display: block; border: none; outline: 0; box-shadow: none; padding: 0; background: transparent; color: inherit; width: 100%; min-width: 0; min-height: 0; margin: 0; border-radius: 0; resize: none; overflow: hidden; font-family: var(--font); font-weight: inherit; letter-spacing: inherit; line-height: inherit; text-align: inherit; white-space: pre-wrap; }
.slide-canvas .editable::placeholder { color: #aab3bd; }
.slide-canvas .editable:focus { outline: 1px dashed rgba(27,104,211,.52); outline-offset: 3px; border-radius: 2px; }
.slide-canvas .editable--read-only { white-space: pre-wrap; overflow: hidden; text-overflow: ellipsis; }
.slide-locked-logo { display: block; position: absolute; top: 5.5%; left: 5.4%; width: 19%; height: 6%; object-fit: contain; object-position: left center; z-index: 2; }
.slide-index { position: absolute; left: 5.4%; bottom: 4.7%; font-weight: 600; font-size: 1.03cqw; letter-spacing: .025em; color: #9eabb7; z-index: 2; }
.slide-index--dark { color: rgba(255,255,255,.7); }
.slide-index-divider { padding: 0 .35em; opacity: .5; }
.cover-canvas, .closing-canvas { background: #04367f url('/brand/original-blue-gradient.jpg') center center / cover no-repeat; color: #fff; }
.cover-content { position: absolute; top: 48%; left: 5.4%; width: 72%; height: 44%; display: flex; flex-direction: column; align-items: flex-start; }
.year-pill { border-radius: 100px; background: #ec2277; min-width: 4.6cqw; padding: .38cqw .86cqw .36cqw; font-size: 1.12cqw; font-weight: 600; line-height: 1.15; margin-bottom: 1.35cqw; }
.year-pill .editable { width: 8cqw; max-width: 15cqw; text-align: center; color: #fff; }
.cover-title { height: 53%; max-height: 53%; font-size: 5.3cqw !important; line-height: 1.04 !important; font-weight: 300 !important; letter-spacing: -.048em !important; color: #fff !important; }
.cover-subtitle { height: 12%; margin-top: 1.1cqw !important; font-size: 1.65cqw !important; letter-spacing: .005em !important; color: rgba(255,255,255,.93) !important; }
.cover-presenter { height: 10%; margin-top: .3cqw !important; font-size: 1.17cqw !important; letter-spacing: .005em !important; color: rgba(255,255,255,.71) !important; }
.cover-watermark { position: absolute; right: 5.5%; bottom: 5.4%; color: rgba(255,255,255,.68); font-size: .92cqw; letter-spacing: .15em; font-weight: 600; }
.closing-content { position: absolute; left: 5.4%; top: 36%; width: 75%; height: 43%; }
.closing-title { font-weight: 300 !important; font-size: 6.2cqw !important; line-height: 1.02 !important; letter-spacing: -.052em !important; height: 70%; color: #fff !important; }
.closing-subtitle { color: rgba(255,255,255,.82) !important; font-size: 1.55cqw !important; height: 15%; margin-top: 1.4cqw !important; }
.closing-url { color: #fff !important; font-size: 1.3cqw !important; position: absolute; bottom: 6.5%; right: 5.2%; width: 20% !important; text-align: right !important; }
.slide-heading-area { position: absolute; top: 21%; left: 5.4%; width: 33%; height: 66%; display: flex; flex-direction: column; align-items: stretch; }
.slide-heading-area > .slide-eyebrow { font-size: 1.03cqw; font-weight: 600; letter-spacing: .14em; line-height: 1.1; color: #2c66b5; height: 5%; flex: 0 0 5%; }
.slide-main-title { font-size: 3.68cqw !important; font-weight: 600 !important; letter-spacing: -.046em !important; line-height: 1.13 !important; color: #1c2b3e !important; margin-top: 1.5cqw !important; height: 35%; flex: 0 0 35%; }
.heading-rule { flex: 0 0 auto; width: 14%; height: .24cqw; background: #2976be; margin: 1.1cqw 0 1.55cqw; }
.slide-summary { font-size: 1.64cqw !important; font-weight: 600 !important; color: #576c80 !important; line-height: 1.18 !important; height: 13%; flex: 0 0 13%; }
.slide-body { font-size: 1.4cqw !important; font-weight: 300 !important; line-height: 1.42 !important; letter-spacing: .005em !important; color: #627184 !important; flex: 1; margin-top: .8cqw !important; }
.slide-visual-panel { position: absolute; top: 14%; left: 43%; width: 51.6%; height: 77%; background: #eef0f2; border-radius: 2.2cqw; overflow: hidden; }
.slide-footer-caption { position: absolute; right: 5.5%; bottom: 4.75%; color: #a6b0ba; font-size: .95cqw; letter-spacing: .115em; font-weight: 600; }
.slide-visual-panel--agenda { padding: 7.4% 5.2%; }
.agenda-list { display: flex; flex-direction: column; justify-content: center; height: 100%; gap: 2cqw; }
.agenda-item { border-bottom: 1px solid #d9dfe5; display: flex; align-items: baseline; gap: 1.55cqw; min-height: 5.1cqw; }
.agenda-number { font-size: 1.18cqw; font-weight: 600; color: #2570b9; letter-spacing: .04em; }
.agenda-text { width: 90%; font-size: 1.95cqw !important; font-weight: 600 !important; letter-spacing: -.02em !important; color: #34485b !important; white-space: nowrap !important; }
.agenda-add { position: absolute; bottom: 4%; left: 9%; display: flex; align-items: center; gap: 6px; border: 0; background: #dae6f5; border-radius: 6px; font-size: 1.3cqw; color: #3f65a3; padding: .75cqw 1cqw; }
.slide-visual-panel--metrics, .slide-visual-panel--cards { padding: 4.7%; }
.metric-grid, .cards-grid { height: 100%; display: grid; grid-template-columns: 1fr 1fr; grid-template-rows: 1fr 1fr; gap: 1.2cqw; }
.metric-tile, .content-card { background: #fff; border-radius: 1.15cqw; padding: 2.1cqw; min-width: 0; overflow: hidden; display: flex; flex-direction: column; justify-content: center; }
.metric-value { font-size: 4.0cqw !important; font-weight: 600 !important; letter-spacing: -.055em !important; color: #1d5dab !important; line-height: 1.05 !important; height: 49%; }
.metric-label { font-size: 1.18cqw !important; font-weight: 600 !important; line-height: 1.25 !important; color: #8190a2 !important; height: 36%; }
.content-card { align-items: stretch; justify-content: flex-start; }
.card-number { color: #2a79c1; font-weight: 600; font-size: 1.12cqw; margin-bottom: 2.1cqw; }
.content-card-title { height: 24%; font-size: 2.12cqw !important; font-weight: 600 !important; letter-spacing: -.032em !important; color: #354a60 !important; }
.content-card-text { height: 35%; margin-top: .45cqw !important; font-size: 1.26cqw !important; line-height: 1.25 !important; color: #758396 !important; }
.image-region { position: absolute; inset: 0; }
.slide-user-image { width: 100%; height: 100%; object-fit: cover; border-radius: inherit; }
.empty-image { position: absolute; inset: 0; background: radial-gradient(circle at 60% 35%, #f6f8fa, #e7ebee 85%); display: flex; flex-direction: column; align-items: center; justify-content: center; }
.empty-image::before { content: ''; position: absolute; inset: 0; background: linear-gradient(transparent 99%,rgba(150,160,180,.10) 99%),linear-gradient(90deg,transparent 99%,rgba(150,160,180,.10) 99%); background-size: 8% 12%; }
.empty-image-symbol { width: 16cqw; height: 16cqw; position: relative; border-radius: 50%; border: 1px solid rgba(52,100,161,.22); }
.symbol-circle { position: absolute; border: 1px solid rgba(52,100,161,.2); border-radius: 50%; }
.symbol-circle--one { inset: 15%; }
.symbol-circle--two { inset: 30%; }
.symbol-dot { width: 2.2cqw; height: 2.2cqw; position: absolute; left: 50%; top: 50%; transform: translate(-50%,-50%); border-radius: 50%; background: rgba(38,98,164,.29); }
.empty-image-label { position: relative; margin-top: 2.5cqw; color: #aab6c2; font-size: 1.05cqw; font-weight: 600; letter-spacing: .24em; }
.image-quick-action { position: absolute; right: 3.3%; bottom: 3%; border: 1px solid #d9e2eb; border-radius: .7cqw; background: rgba(255,255,255,.95); padding: 1cqw 1.25cqw; color: #3869a1; font-size: 1.14cqw; display: flex; gap: .7cqw; align-items: center; }
.image-quick-action svg { width: 1.5cqw; height: 1.5cqw; }
.image-quick-action:hover { background: #e5f1ff; }

/* Slide typography: Atyp Semibold on titles, Light on body; OpenType ss06 throughout. */
.slide-canvas{font-family:var(--font);font-weight:300}
.slide-canvas .editable{font-family:var(--font)}
.slide-canvas .cover-title,.slide-canvas .closing-title,.slide-canvas .slide-main-title,.slide-canvas .slide-summary,.slide-canvas .agenda-text,.slide-canvas .content-card-title{font-weight:600!important}
.slide-canvas .cover-title{font-size:5.15cqw!important;line-height:1.08!important;letter-spacing:-.026em!important}
.slide-canvas .closing-title{font-size:5.9cqw!important;line-height:1.07!important;letter-spacing:-.023em!important}
.slide-canvas .slide-main-title{letter-spacing:-.026em!important;line-height:1.17!important}
.slide-canvas .slide-body{line-height:1.46!important;letter-spacing:.005em!important}
.slide-canvas .slide-visual-panel{border-radius:2.2cqw}
.slide-canvas input,.slide-canvas textarea{font-feature-settings:'ss06' 1,'kern' 1,'liga' 1}
.theme-dark .editor-stage{background-color:#101827}
.theme-dark .thumbnail-canvas{border-color:#2e435b}
@media(max-width:1250px){.control-panel{width:258px;flex-basis:258px}.filmstrip{width:170px;flex-basis:170px}.editor-area{padding:19px 19px 12px}.topbar{padding:0 20px}.layout-item{font-size:10px;padding:8px;gap:5px}}
@media(max-width:980px){.control-panel{width:252px;flex-basis:252px}.filmstrip{width:156px;flex-basis:156px}.filmstrip-scroll{padding:9px 6px}.filmstrip-heading{padding:0 10px}.editor-area{padding:14px 13px 9px}.topbar{height:60px;flex-basis:60px;padding:0 13px}.editor-meta{min-height:47px;flex-basis:47px;margin-bottom:9px}.editor-heading h1{font-size:22px}.editor-stage{padding:10px}.editor-tip{display:none}.under-stage{flex-wrap:wrap;min-height:48px;flex-basis:48px}}
@media(max-width:860px){.control-panel{position:fixed;left:0;top:0;height:100dvh;width:min(350px,calc(100vw - 30px));flex-basis:auto;transform:translateX(-110%);transition:transform .2s;box-shadow:var(--shadow);z-index:51}.control-panel--open{transform:translateX(0)}.panel-mobile-close,.mobile-menu-toggle{display:inline-flex!important}.mobile-scrim{display:block!important;position:fixed;inset:0;z-index:50;background:rgba(4,12,25,.6);border:0}.filmstrip{width:165px;flex-basis:165px}.main-area{width:100%}.topbar{padding:0 17px}.editor-area{padding:18px}.under-stage{min-height:52px;flex-basis:52px}}
@media(max-width:620px){.main-area{height:100dvh}.topbar{height:55px;flex-basis:55px;padding:0 11px}.topbar-actions{gap:1px}.top-counter{display:none}.workspace-name{font-size:13px}.compact-icon-btn{width:29px;min-width:29px;height:29px}.topbar .theme-switch{margin-right:0}.export-button{padding:9px;min-width:34px;margin-left:3px}.export-button span{display:none}.workbench{flex-direction:column}.editor-area{order:1;padding:10px 10px 4px;flex:1;min-height:0}.editor-meta{min-height:43px;flex-basis:43px;margin:0 0 7px}.editor-heading h1{font-size:20px}.editor-stage{padding:5px;border-radius:8px;align-items:center}.stage-canvas-container{width:100%!important;max-width:100%!important;max-height:100%}.under-stage{min-height:46px;flex-basis:46px;gap:3px}.under-stage-actions{gap:0}.under-divider{display:none}.toolbar-text-btn{font-size:0;gap:0;padding:5px}.toolbar-text-btn svg{width:17px;height:17px}.active-layout-text{font-size:10px}.editor-tip{display:none}.filmstrip{order:2;width:100%;height:166px;flex:0 0 166px;flex-direction:row;border-right:0;border-top:1px solid var(--hair)}.filmstrip-heading{display:none}.filmstrip-scroll{flex:1;min-width:0;overflow-y:hidden;overflow-x:auto;padding:10px 8px;scroll-snap-type:x proximity}.thumbs{display:flex;flex-direction:row;gap:7px;align-items:flex-start}.thumb-card{width:133px;flex:0 0 133px;scroll-snap-align:start}.thumbnail-caption{padding:5px 2px 1px}.thumbnail-title{font-size:10px}.filmstrip-bottom{width:112px;flex:0 0 112px;height:100%;border-left:1px solid var(--hair);border-top:0;padding:10px}.thumb-add{height:100%;display:flex;flex-direction:column;gap:5px;padding:9px;text-align:center;line-height:1.3}.thumbnail-actions{display:none!important}.toast{bottom:174px;right:10px;left:10px;max-width:none}.editor-controls{gap:1px}}
@media(max-height:640px) and (min-width:621px){.editor-meta{min-height:39px;flex-basis:39px}.editor-heading h1{font-size:21px}.editor-area{padding-top:8px}.editor-stage{padding:7px}.under-stage{min-height:44px;flex-basis:44px}.editor-tip{display:none}.filmstrip-bottom{height:59px;flex-basis:59px;padding:8px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}}

.theme-glyph{font-family:Arial,Helvetica,sans-serif;font-size:22px;font-weight:400;line-height:1}

/* AQUAPHOR Studio 3.0 — interface and slide typography are intentionally separate. */
:root {
  --font-ui: Inter, -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Helvetica Neue', Arial, sans-serif;
  --font-slide: 'AtypStudio','AtypLocal','Atyp Text', 'Helvetica Neue', Arial, sans-serif;
  --font:var(--font-ui);
  font-family:var(--font-ui);
  letter-spacing:0;
}
body, button, input, select, textarea {font-family:var(--font-ui);font-feature-settings:'kern' 1,'liga' 1}
.studio-v3 .control-panel {width:310px;flex-basis:310px}
.studio-v3 .panel-top {min-height:67px;padding:14px 18px}
.studio-v3 .studio-mark strong {font-family:var(--font-ui);font-size:15px;font-weight:700;letter-spacing:-.025em}
.studio-v3 .studio-mark span {font-size:9px;font-weight:600;letter-spacing:.1em}
.studio-v3 .panel-tabs,.studio-v3 .branding-compact,.studio-v3 .panel-scroll {display:none!important}
.studio-v3 .accordion-scroll{flex:1;min-height:0;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#9baabc65 transparent}
.studio-v3 .accordion{border-bottom:1px solid var(--hair)}
.studio-v3 .accordion-heading{height:59px;min-height:59px;width:100%;display:flex;align-items:center;gap:12px;padding:0 19px;background:transparent;border:none;color:var(--text);text-align:left}
.studio-v3 .accordion-heading:hover{background:var(--panel2)}
.studio-v3 .accordion-heading-icon{width:31px;height:31px;display:grid;place-items:center;border-radius:8px;background:var(--panel3);color:#4f6b99;flex:0 0 auto}
.studio-v3 .accordion-heading-label{font-size:14px;font-weight:650;letter-spacing:-.015em;flex:1}
.studio-v3 .accordion-chevron{color:var(--sub);transition:transform .18s ease}
.studio-v3 .accordion--open .accordion-chevron{transform:rotate(180deg)}
.studio-v3 .accordion--open .accordion-heading-icon{background:#e7efff;color:#255bc3}
.studio-v3.theme-dark .accordion--open .accordion-heading-icon{background:#21385d;color:#9bbefb}
.studio-v3 .accordion-pane{padding:0 18px 19px}
.studio-v3 .accordion-content{padding-top:2px;display:block}
.studio-v3 .compact-header{margin-bottom:11px}
.studio-v3 .compact-header h2{font-family:var(--font-ui);font-size:12px;line-height:1.25;font-weight:650;letter-spacing:0}
.studio-v3 .section-rule{margin:19px 0}
.studio-v3 .layout-grid-compact{grid-template-columns:1fr 1fr;gap:8px}
.studio-v3 .layout-item{min-height:61px;font-family:var(--font-ui);font-size:11px;line-height:1.3;font-weight:500;padding:8px 9px;gap:9px}
.studio-v3 .layout-item.selected{background:#eaf2ff;color:#184f9b;border-color:#2f78d9}
.studio-v3.theme-dark .layout-item.selected{background:#182e4c;color:#b5d4ff}
.studio-v3 .sidebar-caption{font-family:var(--font-ui);font-size:10px;letter-spacing:.06em;font-weight:650}
.studio-v3 .brand-logo-choices button{font-family:var(--font-ui);font-size:11px;font-weight:650;min-width:42px}
.studio-v3 .basic-input,.studio-v3 .prompt-area,.studio-v3 .outlined-button{font-family:var(--font-ui);font-size:12px;line-height:1.48}
.studio-v3 .prompt-area{min-height:118px;resize:vertical}
.studio-v3 .generate-button{font-family:var(--font-ui);font-size:12px}
.studio-v3 .generate-button span{font-family:var(--font-ui);font-weight:650}
.studio-v3 .ai-connection{margin:2px 0 13px}
.studio-v3 .diagnostic-note{margin:3px 0 13px}
.studio-v3 .minimal-check{margin:5px 0 15px}
.studio-v3 .settings-toggle{display:flex;justify-content:space-between;align-items:center;gap:10px;cursor:pointer}
.studio-v3 .settings-toggle strong{display:block;font-size:12px;font-weight:600;line-height:1.4}
.studio-v3 .settings-toggle small{display:block;font-size:10px;color:var(--sub);line-height:1.5;margin-top:3px}
.studio-v3 .settings-toggle input{accent-color:#225bba;width:17px;height:17px;margin:0}
.studio-v3 .compact-icon-btn,.studio-v3 .topbar,.studio-v3 .workspace-name{font-family:var(--font-ui)}
.studio-v3 .workspace-name{font-size:14px;font-weight:650;letter-spacing:-.02em}
.studio-v3 .top-counter{font-size:12px}
.studio-v3 .filmstrip{width:188px;flex-basis:188px}
.studio-v3 .editor-stage{background-image:none}
.studio-v3 .editor-heading h1{font-family:var(--font-ui);font-weight:650}
.studio-v3 .editor-tip{display:none}

/* Slide canvas: restrained Swiss grid, no decorative secondary captions. */
.studio-v3 .slide-canvas{font-family:var(--font-slide);font-weight:300;font-synthesis: none;font-feature-settings:'ss06' 1,'kern' 1,'liga' 1}
.studio-v3 .slide-canvas .editable{font-family:var(--font-slide)!important;font-feature-settings:'ss06' 1,'kern' 1,'liga' 1}
.studio-v3 .slide-locked-logo{top:5.25%;left:5.45%;width:14.5%;height:4.0%;z-index:3}
.studio-v3 .slide-locked-logo--dark{top:5.4%;width:19%;height:5.8%}
.studio-v3 .slide-top-rule{position:absolute;left:25.5%;top:7.35%;width:16.9%;height:.11cqw;background:#a8bfda;z-index:2}
.studio-v3 .slide-index{left:auto;right:5.4%;bottom:3.6%;font-size:.91cqw;font-weight:300;color:#aab1ba;letter-spacing:0}
.studio-v3 .slide-heading-area{top:32%;left:5.45%;width:32.5%;height:57%;display:flex;flex-direction:column;align-items:stretch}
.studio-v3 .slide-main-title{margin:0!important;flex:0 0 auto!important;height:auto!important;max-height:52%!important;font-size:3.42cqw!important;font-weight:600!important;letter-spacing:-.027em!important;line-height:1.15!important;color:#202d3d!important}
.studio-v3 .slide-body{margin-top:2.35cqw!important;flex:1 1 auto!important;min-height:0;font-size:1.43cqw!important;font-weight:300!important;letter-spacing:0!important;line-height:1.46!important;color:#687585!important}
.studio-v3 .slide-visual-panel{top:7.3%;left:42.5%;width:52.65%;height:86.4%;border-radius:2.05cqw;overflow:hidden;background:#edf0f2}
.studio-v3 .slide-eyebrow,.studio-v3 .slide-summary,.studio-v3 .heading-rule,.studio-v3 .slide-footer-caption,.studio-v3 .cover-watermark{display:none!important}
.studio-v3 .slide-visual-panel--agenda{padding:5.8% 5.1%}
.studio-v3 .agenda-list{gap:0;justify-content:center;height:100%}
.studio-v3 .agenda-item{border-bottom:1px solid #d7dde3;min-height:5.65cqw;display:flex;align-items:center;gap:1.8cqw;padding:.6cqw 0}
.studio-v3 .agenda-number{font-size:1.05cqw;letter-spacing:.01em;color:#467bb1}
.studio-v3 .agenda-text{height:auto!important;min-height:2.8cqw!important;flex:1;white-space:pre-wrap!important;font-size:1.83cqw!important;line-height:1.25!important;font-weight:600!important;letter-spacing:-.025em!important;color:#344454!important}
.studio-v3 .agenda-add{bottom:3.5%;font-family:var(--font-ui);font-size:1.22cqw}
.studio-v3 .slide-visual-panel--metrics,.studio-v3 .slide-visual-panel--cards{padding:5.2%}
.studio-v3 .metric-grid,.studio-v3 .cards-grid{gap:1.2cqw}
.studio-v3 .metric-tile,.studio-v3 .content-card{border-radius:1.15cqw;padding:2.25cqw}
.studio-v3 .metric-value{font-size:3.7cqw!important;font-weight:600!important;letter-spacing:-.025em!important;line-height:1.08!important}
.studio-v3 .metric-label{font-size:1.35cqw!important;font-weight:300!important;line-height:1.35!important;letter-spacing:0!important}
.studio-v3 .content-card-title{font-size:2.1cqw!important;line-height:1.17!important;letter-spacing:-.025em!important}
.studio-v3 .content-card-text{font-size:1.32cqw!important;line-height:1.42!important}
.studio-v3 .card-number{display:none}
.studio-v3 .content-card{justify-content:center}
.studio-v3 .content-card-title{height:auto;max-height:42%}
.studio-v3 .content-card-text{height:auto;max-height:48%;margin-top:.6cqw!important}
.studio-v3 .empty-image{background:radial-gradient(circle at 54% 46%,#f8fafb,#e4e9ec 93%)}
.studio-v3 .empty-image::before{display:none}
.studio-v3 .empty-image-label{display:none}
.studio-v3 .empty-image-symbol{width:11cqw;height:11cqw;border-color:rgba(52,100,161,.14)}
.studio-v3 .symbol-circle{border-color:rgba(52,100,161,.15)}

/* Cover: content-driven pill with vertical and horizontal optical balance. */
.studio-v3 .cover-content{top:45%;left:5.45%;height:50%;width:87%;display:flex;align-items:flex-start;flex-direction:column}
.studio-v3 .year-pill{display:inline-block;position:relative;flex:0 0 auto;width:max-content;max-width:80%;font-size:1.11cqw;line-height:1.2;font-weight:600;letter-spacing:.012em;padding:.47cqw .90cqw;border-radius:99px;background:#ed2674;margin:0 0 1.4cqw}
.studio-v3 .year-pill .pill-measure{display:block;font:inherit;white-space:pre;visibility:hidden;min-width:2.2cqw}
.studio-v3 .year-pill .editable{position:absolute;top:.47cqw;left:.9cqw;width:calc(100% - 1.8cqw)!important;height:1.34cqw!important;max-width:none!important;line-height:1.2!important;text-align:left;color:#fff!important;white-space:nowrap!important;font-size:inherit!important;font-weight:600!important;letter-spacing:inherit!important}
.studio-v3 .cover-title{flex:0 0 auto;height:48%!important;max-height:48%!important;font-size:5.2cqw!important;font-weight:600!important;letter-spacing:-.027em!important;line-height:1.12!important;color:#fff!important}
.studio-v3 .cover-subtitle{flex:0 0 auto;height:12%!important;margin-top:.35cqw!important;font-size:1.52cqw!important;line-height:1.4!important;font-weight:300!important;letter-spacing:0!important}
.studio-v3 .cover-presenter{height:9%!important;margin-top:.55cqw!important;font-size:1.15cqw!important;line-height:1.35!important;font-weight:300!important}
.studio-v3 .closing-content{top:37%;height:51%}
.studio-v3 .closing-title{font-weight:600!important;letter-spacing:-.027em!important;line-height:1.1!important}
.studio-v3 .closing-subtitle{font-weight:300!important;line-height:1.4!important}
.studio-v3 .closing-url{left:5.45%!important;right:auto!important;bottom:6.7%!important;text-align:left!important;font-weight:300!important;color:rgba(255,255,255,.75)!important}

@media(max-width:1250px){.studio-v3 .control-panel{width:278px;flex-basis:278px}.studio-v3 .filmstrip{width:165px;flex-basis:165px}}
@media(max-width:860px){.studio-v3 .control-panel{position:fixed;top:0;left:0;height:100dvh;width:min(340px,calc(100vw - 30px));flex-basis:auto}}
@media(max-width:620px){.studio-v3 .filmstrip{width:100%;height:162px;flex:0 0 162px}.studio-v3 .editor-area{min-width:0}.studio-v3 .stage-canvas-container{max-width:100%!important}.studio-v3 .slide-top-rule{height:.14cqw}}

/* AI diagnostics v3.1 — visible in the AI accordion, no global alerts */
.ai-test-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:8px 0 14px}
.ai-test-row .outlined-button{min-width:135px}
.ai-test-result{font-size:11px;line-height:1.4;color:var(--muted, #6a7b91)}
.ai-troubleshoot{padding:12px 14px;border:1px solid #e3b9ae;border-radius:12px;background:rgba(211,92,64,.075);margin:6px 0 12px;color:var(--ink,#233445);font-size:12px;line-height:1.5;overflow-wrap:anywhere}
.ai-troubleshoot strong{font-weight:600;font-size:11px;letter-spacing:.01em}
.ai-troubleshoot p{margin:6px 0 0}
.ai-troubleshoot a{display:inline-block;margin-top:8px;color:#165bc5;text-decoration:underline}
