/* Audivide: shared reading and presentation workspace. */
.av-shell{width:min(1440px,calc(100% - 36px));margin:0 auto}
.av-main{padding:34px 0 48px}
.av-hero{margin-bottom:24px}
.av-eyebrow{margin:0 0 8px;color:#34d399;font-size:.78rem;font-weight:800;letter-spacing:.15em;text-transform:uppercase}
.av-hero h1{margin:0 0 10px;color:#f1f5f9;font-size:clamp(2rem,4vw,3.1rem);line-height:1.08;letter-spacing:-.035em}
.av-hero p{max-width:850px;margin:0;color:#aebed3;font-size:1.05rem;line-height:1.6}
.av-layout{display:grid;grid-template-columns:minmax(300px,.85fr) minmax(0,1.15fr);gap:20px;align-items:start}
.av-panel{min-width:0;overflow:hidden;border:1px solid rgba(110,231,183,.2);border-radius:16px;background:rgba(15,23,42,.94);box-shadow:0 18px 48px rgba(0,0,0,.22),0 0 24px rgba(16,185,129,.05)}
.av-panel-header{padding:17px 19px;border-bottom:1px solid rgba(110,231,183,.13);background:linear-gradient(135deg,rgba(6,78,59,.14),rgba(8,47,73,.16))}
.av-panel-header h2{margin:0;color:#e2e8f0;font-size:1.1rem}
.av-panel-header p{margin:5px 0 0;color:#aebed3;font-size:.86rem;line-height:1.45}
.av-panel-body{display:grid;gap:16px;padding:18px}
.av-field{display:grid;gap:7px;min-width:0}
.av-field label,.av-control-label{color:#cbd5e1;font-size:.84rem;font-weight:750}
.av-field textarea,.av-field select,.av-field input[type=text],.av-field input[type=number],.av-field input[type=range],.av-control select,.av-control input[type=number],.av-control input[type=range]{width:100%;min-width:0;border:1px solid rgba(148,163,184,.26);border-radius:10px;background:#071426;color:#edf5ff;font:inherit}
.av-field textarea{min-height:330px;padding:12px;resize:vertical;font-size:.94rem;line-height:1.6}
.av-field select,.av-field input[type=text],.av-field input[type=number],.av-control select,.av-control input[type=number]{min-height:43px;padding:9px 11px}
.av-field textarea::placeholder,.av-field input::placeholder{color:#8293a8}
.av-field textarea:focus-visible,.av-field select:focus-visible,.av-field input:focus-visible,.av-control select:focus-visible,.av-control input:focus-visible{outline:2px solid rgba(110,231,183,.88);outline-offset:2px;box-shadow:0 0 0 4px rgba(52,211,153,.12)}
.av-editor-meta{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;color:#94a3b8;font-size:.78rem}
.av-mode-tabs{display:flex;gap:7px;flex-wrap:wrap;padding:12px 16px;border-bottom:1px solid rgba(110,231,183,.12);background:rgba(2,8,23,.24)}
.av-mode-tab{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:8px 14px;border:1px solid rgba(148,163,184,.22);border-radius:999px;background:rgba(15,23,42,.72);color:#cbd5e1;font:inherit;font-size:.87rem;font-weight:750;cursor:pointer;transition:border-color .16s ease,background .16s ease,color .16s ease,transform .16s ease}
.av-mode-tab:hover{border-color:rgba(110,231,183,.44);background:rgba(6,78,59,.24);color:#f0fdf4}
.av-mode-tab[aria-selected=true],.av-mode-tab.is-active{border-color:rgba(110,231,183,.55);background:linear-gradient(120deg,rgba(6,95,70,.5),rgba(8,47,73,.58));color:#d1fae5;box-shadow:0 0 16px rgba(16,185,129,.08)}
.av-mode-panel{min-width:0;padding:18px}
.av-mode-panel[hidden],.av-hidden{display:none!important}
.av-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;margin-bottom:15px}
.av-control{display:grid;gap:7px;min-width:0}
.av-control .av-control-heading{display:flex;justify-content:space-between;align-items:center;gap:8px;color:#cbd5e1;font-size:.84rem;font-weight:750}
.av-value{display:inline-flex;align-items:center;min-height:24px;padding:2px 8px;border:1px solid rgba(110,231,183,.24);border-radius:999px;background:rgba(6,78,59,.24);color:#a7f3d0;font-size:.75rem;font-weight:800;white-space:nowrap}
.av-range-wrap{display:flex;align-items:center;gap:10px;min-height:43px}
.av-control input[type=range]{height:6px;padding:0;border:0;border-radius:999px;background:#263b54;appearance:none;cursor:pointer}
.av-control input[type=range]::-webkit-slider-thumb{width:18px;height:18px;border:2px solid rgba(255,255,255,.55);border-radius:50%;background:#34d399;appearance:none;box-shadow:0 2px 8px rgba(0,0,0,.3)}
.av-control input[type=range]::-moz-range-thumb{width:15px;height:15px;border:2px solid rgba(255,255,255,.55);border-radius:50%;background:#34d399;box-shadow:0 2px 8px rgba(0,0,0,.3)}
.av-actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap}
.av-button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:41px;padding:9px 13px;border:1px solid rgba(110,231,183,.28);border-radius:10px;background:linear-gradient(135deg,rgba(6,78,59,.28),rgba(30,41,59,.94));color:#e2e8f0;font:inherit;font-size:.86rem;font-weight:750;cursor:pointer;text-decoration:none;transition:border-color .16s ease,background .16s ease,box-shadow .16s ease,transform .16s ease}
.av-button.primary{border-color:transparent;background:linear-gradient(105deg,#168b70,#087e91);color:#fff}
.av-button.danger{border-color:rgba(248,113,113,.32);background:rgba(127,29,29,.28);color:#fecaca}
.av-button:hover:not(:disabled){border-color:rgba(110,231,183,.6);background:linear-gradient(135deg,rgba(6,95,70,.48),rgba(30,41,59,.98));box-shadow:0 0 16px rgba(16,185,129,.1);color:#fff;transform:translateY(-1px)}
.av-button.primary:hover:not(:disabled){background:linear-gradient(105deg,#1aa47f,#0891a4)}
.av-button.danger:hover:not(:disabled){border-color:rgba(248,113,113,.55);background:rgba(127,29,29,.46)}
.av-button:focus-visible,.av-mode-tab:focus-visible{outline:2px solid rgba(110,231,183,.88);outline-offset:3px}
.av-button:disabled{opacity:.48;cursor:not-allowed;transform:none;box-shadow:none}
.av-status{min-height:24px;margin:12px 0 0;color:#aebed3;font-size:.86rem;line-height:1.5;overflow-wrap:anywhere}
.av-status.is-error{color:#fecaca}.av-status.is-success{color:#a7f3d0}
.av-notice{margin:12px 0 0;padding:11px 13px;border:1px solid rgba(251,191,36,.3);border-radius:10px;background:rgba(120,77,18,.2);color:#fde68a;font-size:.84rem;line-height:1.5}
.av-reader{position:relative;min-height:360px;max-height:62vh;overflow:auto;padding:26px clamp(18px,5vw,56px);border:1px solid rgba(110,231,183,.18);border-radius:13px;background:radial-gradient(ellipse at 50% 0,rgba(52,211,153,.055),transparent 65%),#091426;scrollbar-color:#287b68 #111c2d}
.av-reader-content{max-width:850px;margin:0 auto;color:#edf5ff;font-size:clamp(1.25rem,2.6vw,2rem);line-height:1.7;white-space:pre-wrap;overflow-wrap:anywhere}
.av-reader-content span{border-radius:5px;transition:background-color .16s ease,color .16s ease,box-shadow .16s ease}
.av-reader-content span.is-active,.av-reader-content .active{background:rgba(52,211,153,.24);color:#fff;box-shadow:0 0 0 3px rgba(52,211,153,.1)}
.av-reader-content span.is-spoken,.av-reader-content .spoken{color:#9aabbd}
.av-reader.show-guide:after{position:sticky;top:50%;display:block;height:0;border-top:1px solid rgba(110,231,183,.42);content:"";pointer-events:none}
.av-teleprompter{height:min(68vh,760px);min-height:360px;overflow:auto;padding:clamp(20px,5vw,64px);border:1px solid rgba(110,231,183,.2);border-radius:13px;background:radial-gradient(ellipse at 50% 0,rgba(52,211,153,.06),transparent 65%),#091426;scrollbar-color:#287b68 #111c2d}
.av-teleprompter-content{max-width:900px;margin:0 auto;color:#edf5ff;font-size:clamp(1.3rem,3vw,2.15rem);line-height:1.7;white-space:pre-wrap;overflow-wrap:anywhere}
.av-teleprompter.show-guide{background-image:linear-gradient(to bottom,transparent calc(50% - 1px),rgba(110,231,183,.4) 50%,transparent calc(50% + 1px)),radial-gradient(ellipse at 50% 0,rgba(52,211,153,.06),transparent 65%)}
.av-help{margin:12px 0 0;color:#94a3b8;font-size:.81rem;line-height:1.55}
.av-footer{padding:0 0 34px;color:#94a3b8;font-size:.82rem;line-height:1.55}
.av-footer p{margin:6px 0}.av-footer a{color:#a7f3d0}
.av-shell a:focus-visible{outline:2px solid rgba(110,231,183,.88);outline-offset:3px}
@media(max-width:900px){.av-layout{grid-template-columns:1fr}.av-field textarea{min-height:240px}.av-reader{min-height:300px}}
@media(max-width:640px){.av-shell{width:min(100% - 24px,620px)}.av-main{padding:26px 0 34px}.av-layout{gap:14px}.av-panel-header{padding:15px}.av-panel-body,.av-mode-panel{padding:14px}.av-field textarea{min-height:210px}.av-mode-tabs{padding:10px 12px}.av-mode-tab{flex:1 1 130px}.av-controls{grid-template-columns:1fr}.av-actions{align-items:stretch;flex-direction:column}.av-actions .av-button{width:100%}.av-reader,.av-teleprompter{min-height:280px;height:55vh;padding:20px 16px}.av-reader-content,.av-teleprompter-content{font-size:1.3rem}}
@media print{.av-topbar,.av-hero,.av-editor-panel,.av-mode-tabs,.av-controls,.av-actions,.av-status,.av-notice,.av-help,.av-footer{display:none!important}.av-shell,.av-main,.av-layout,.av-panel,.av-mode-panel{width:100%;max-width:none;margin:0;padding:0;border:0;background:#fff;box-shadow:none}.av-reader,.av-teleprompter{height:auto;max-height:none;min-height:0;overflow:visible;padding:0;border:0;background:#fff}.av-reader-content,.av-teleprompter-content{max-width:none;color:#111;font-size:12pt;line-height:1.55}}
@media(prefers-reduced-motion:reduce){.av-mode-tab,.av-button,.av-reader-content span{transition:none}.av-mode-tab:hover,.av-button:hover{transform:none}}