:root{--bg: #ffffff;--bg-warm: #fffcf6;--bg-elevated: rgba(255, 255, 255, .82);--ink: #1a1614;--ink-soft: rgba(26, 22, 20, .58);--ink-faint: rgba(26, 22, 20, .32);--brown: #8b7355;--brown-hover: #7a6549;--brown-soft: rgba(26, 22, 20, .06);--line: rgba(26, 22, 20, .1);--line-strong: rgba(26, 22, 20, .18);--status-live: #5a8a5a;--status-live-hover: #4a7a4a;--status-amber: #c49a3c;--status-error: #9a4040;--glass-bg: rgba(255, 252, 246, .88);--glass-bg-heavy: rgba(255, 251, 243, .92);--glass-border: rgba(255, 248, 238, .6);--glass-blur: blur(14px) saturate(1.5);--glass-shadow: 0 4px 24px rgba(26, 22, 20, .07), 0 1px 4px rgba(26, 22, 20, .04);--glass-shadow-lg: 0 12px 40px rgba(26, 22, 20, .11), 0 3px 10px rgba(26, 22, 20, .06);--radius-sm: .45rem;--radius-md: .8rem;--radius-lg: 1.1rem;--radius-xl: 1.5rem;--ease-out: cubic-bezier(.17, .84, .44, 1);--ease-snap: cubic-bezier(.3, .84, .38, 1.05);--duration: .38s;--duration-fast: .2s;--font-display: "Times New Roman", Times, Georgia, serif;--font-ui: "Avenir Next", "Helvetica Neue", Arial, sans-serif;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--space-16: 4rem;--watermark-opacity: .04;--watermark-size: 48px;--on-accent: #ffffff}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}[hidden]{display:none!important}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}body{font-family:var(--font-ui);color:var(--ink);background:var(--bg);line-height:1.72;letter-spacing:.01em;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.has-watermark{position:relative;overflow:hidden}.has-watermark:after{content:"";position:absolute;top:var(--space-4);right:var(--space-4);width:var(--watermark-size);height:calc(var(--watermark-size) * 1.73);background:url(/brand/logo-bulb.png) no-repeat center / contain;opacity:var(--watermark-opacity);pointer-events:none;z-index:0}.has-watermark>*{position:relative;z-index:1}@keyframes fadeIn{0%{opacity:0;transform:scale(.97)}to{opacity:1;transform:scale(1)}}@keyframes cardEnter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes sectionEnter{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes pulseGlow{0%,to{box-shadow:0 0 #5a8a5a00}50%{box-shadow:0 0 0 4px #5a8a5a1f}}.login-view{min-height:100vh;min-height:100dvh;display:flex;align-items:center;justify-content:center;padding:var(--space-6);background:radial-gradient(ellipse at 25% 15%,rgba(26,22,20,.04) 0%,transparent 55%),radial-gradient(ellipse at 75% 85%,rgba(26,22,20,.03) 0%,transparent 55%),radial-gradient(ellipse at 50% 50%,rgba(255,252,246,.4) 0%,transparent 70%),var(--bg)}.login-card{width:100%;max-width:380px;padding:var(--space-10) var(--space-8) var(--space-8);background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--radius-xl);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);box-shadow:var(--glass-shadow-lg);animation:cardEnter .4s var(--ease-out) both}.login-logo{display:flex;justify-content:center;margin-bottom:var(--space-6)}.login-logo .logo-bulb{display:block;filter:drop-shadow(0 2px 8px rgba(26,22,20,.08))}.login-title{font-family:var(--font-display);font-size:1.5rem;font-weight:400;text-align:center;margin-bottom:var(--space-8);letter-spacing:.04em}.login-form{display:flex;flex-direction:column;gap:var(--space-5)}.form-field{display:flex;flex-direction:column;gap:var(--space-1)}.form-field label{font-size:.75rem;font-weight:600;color:var(--ink-faint);text-transform:uppercase;letter-spacing:.08em}.form-field input{padding:var(--space-3) var(--space-4);border:1px solid var(--line);border-radius:var(--radius-sm);font-family:var(--font-ui);font-size:.95rem;color:var(--ink);background:#fff9;outline:none;transition:border-color var(--duration) var(--ease-out),box-shadow var(--duration) var(--ease-out)}.form-field input:focus{border-color:var(--ink);box-shadow:0 0 0 3px #1a161414}.login-error{font-size:.85rem;color:var(--status-error);background:#9a40400f;border:1px solid rgba(154,64,64,.12);border-radius:var(--radius-sm);padding:var(--space-3) var(--space-4);line-height:1.5}.login-button{padding:var(--space-3) var(--space-6);background:var(--ink);color:#fff;border:none;border-radius:999px;font-family:var(--font-ui);font-size:.9rem;font-weight:500;letter-spacing:.03em;cursor:pointer;box-shadow:0 2px 6px #1a16141f;transition:transform .18s ease,box-shadow .18s ease;margin-top:var(--space-1)}.login-button:hover{transform:translateY(-1px);box-shadow:0 6px 18px #1a161438}.login-button:active{transform:scale(.97)}.login-button:focus-visible{outline:2px solid var(--ink);outline-offset:2px}.console-view{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;background:radial-gradient(ellipse at 15% 8%,rgba(26,22,20,.02) 0%,transparent 50%),var(--bg)}.console-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-3) var(--space-6);border-bottom:1px solid var(--line);background:var(--glass-bg-heavy);backdrop-filter:blur(18px) saturate(1.6);-webkit-backdrop-filter:blur(18px) saturate(1.6);position:sticky;top:0;z-index:10;box-shadow:0 1px 3px #1a16140a,0 1px #ffffff80}.header-left{display:flex;align-items:center;gap:var(--space-3)}.header-logo{width:28px;height:auto;filter:drop-shadow(0 1px 4px rgba(26,22,20,.06))}.header-title{font-family:var(--font-display);font-size:1.05rem;font-weight:400;letter-spacing:.04em}.header-status{display:flex;align-items:center;gap:6px;margin-left:var(--space-3);padding-left:var(--space-3);border-left:1px solid var(--line)}.status-dot{width:6px;height:6px;border-radius:50%;background:var(--status-live);animation:pulseGlow 3s ease-in-out infinite}.status-text{font-size:.72rem;color:var(--ink-faint);text-transform:uppercase;letter-spacing:.06em;font-weight:500}.logout-button{padding:var(--space-2) var(--space-4);border:1px solid var(--line);border-radius:var(--radius-sm);background:transparent;font-family:var(--font-ui);font-size:.78rem;color:var(--ink-faint);cursor:pointer;letter-spacing:.02em;transition:color var(--duration) var(--ease-out),border-color var(--duration) var(--ease-out),background var(--duration) var(--ease-out)}.logout-button:hover{color:var(--ink-soft);border-color:var(--line-strong);background:#00000005}.logout-button:focus-visible{outline:2px solid var(--ink);outline-offset:2px}.console-body{display:flex;flex:1;min-height:0}.console-nav{width:210px;flex-shrink:0;padding:var(--space-5) var(--space-3);border-right:1px solid var(--line);display:flex;flex-direction:column;gap:2px;background:#fffcf64d}.nav-item{display:flex;align-items:center;width:100%;padding:var(--space-3) var(--space-4);border:none;border-radius:var(--radius-sm);background:transparent;font-family:var(--font-ui);font-size:.86rem;color:var(--ink-soft);text-align:left;cursor:pointer;transition:color var(--duration) var(--ease-out),background var(--duration) var(--ease-out);position:relative}.nav-item:hover{color:var(--ink);background:#1a161408}.nav-item:focus-visible{outline:2px solid var(--ink);outline-offset:-2px}.nav-item:before{content:"";position:absolute;left:0;top:50%;width:3px;height:18px;background:var(--ink);border-radius:0 2px 2px 0;opacity:0;transform:translateY(-50%) scaleY(0);transition:opacity var(--duration-fast) var(--ease-out),transform var(--duration-fast) var(--ease-snap)}.nav-item.active{color:var(--ink);background:var(--brown-soft);font-weight:500}.nav-item.active:before{opacity:1;transform:translateY(-50%) scaleY(1)}.console-main{flex:1;padding:var(--space-8);min-width:0}.console-section{position:relative;overflow:hidden;background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--radius-lg);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);box-shadow:var(--glass-shadow);padding:var(--space-8);animation:sectionEnter .3s var(--ease-out) both}.console-section h2{font-family:var(--font-display);font-size:1.3rem;font-weight:400;letter-spacing:.04em;margin-bottom:var(--space-3)}.placeholder-text{color:var(--ink-faint);font-size:.88rem;line-height:1.72;font-style:italic}.section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-6)}.section-header h2{margin-bottom:0}.section-header-actions{display:flex;gap:var(--space-2)}.action-button{padding:var(--space-2) var(--space-5);background:var(--ink);color:#fff;border:none;border-radius:999px;font-family:var(--font-ui);font-size:.8rem;font-weight:500;letter-spacing:.03em;cursor:pointer;box-shadow:0 2px 6px #1a16141f;transition:transform .18s ease,box-shadow .18s ease}.action-button:hover{transform:translateY(-1px);box-shadow:0 6px 18px #1a161438}.action-button:active{transform:scale(.97)}.action-button:disabled{opacity:.5;cursor:default;box-shadow:none}.action-button.secondary{background:transparent;color:var(--ink);border:1.5px solid rgba(26,22,20,.3);box-shadow:none}.action-button.secondary:hover{border-color:var(--ink);background:#1a16140a;transform:translateY(-1px);box-shadow:none}.action-button:focus-visible{outline:2px solid var(--ink);outline-offset:2px}.panel-title{font-family:var(--font-ui);font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--ink-faint);margin-bottom:var(--space-3)}.waiting-panel{margin-bottom:var(--space-6);padding:var(--space-5);background:#5a8a5a0a;border:1px solid rgba(90,138,90,.12);border-radius:var(--radius-md);animation:cardEnter .3s var(--ease-out) both}.waiting-panel .panel-title{color:var(--status-live)}.rooms-panel{margin-top:var(--space-4)}.empty-text{color:var(--ink-faint);font-size:.86rem;font-style:italic;padding:var(--space-8) var(--space-4);text-align:center}.empty-text:before{content:"";display:block;width:40px;height:69.2px;margin:0 auto var(--space-3);background:url(/brand/logo-bulb.png) no-repeat center / contain;opacity:.08}.room-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:var(--space-3)}.room-card{display:flex;flex-direction:column;justify-content:space-between;padding:var(--space-4);border:1px solid var(--line);border-radius:var(--radius-md);background:#ffffff80;transition:border-color var(--duration) var(--ease-out),box-shadow var(--duration) var(--ease-out),background var(--duration) var(--ease-out);min-height:140px}.room-card:hover{background:#ffffffb3;box-shadow:0 2px 8px #1a16140a;border-color:var(--ink)}.room-card.locked{border-color:#c49a3c33;background:#c49a3c08}.room-info{display:flex;flex-direction:column;gap:var(--space-2)}.room-name{font-size:.92rem;font-weight:600;color:var(--ink)}.room-code{font-family:SF Mono,Fira Code,Consolas,monospace;font-size:.92rem;font-weight:500;color:var(--ink);letter-spacing:.02em}.room-name+.room-code{font-size:.76rem;color:var(--ink-soft)}.room-status{font-size:.8rem;color:var(--ink-soft)}.room-lock-badge{font-size:.68rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--status-amber);background:#c49a3c1a;padding:2px var(--space-3);border-radius:var(--radius-sm)}.room-scheduled-time{font-size:.8rem;font-weight:500;color:var(--ink)}.room-invitee{font-size:.78rem;color:var(--ink-soft)}.room-actions{display:flex;gap:var(--space-2);flex-wrap:wrap;margin-top:auto;padding-top:var(--space-3)}.room-actions button{padding:var(--space-2) var(--space-3);border:1px solid var(--line);border-radius:var(--radius-sm);background:transparent;font-family:var(--font-ui);font-size:.76rem;color:var(--ink-faint);cursor:pointer;transition:color var(--duration) var(--ease-out),border-color var(--duration) var(--ease-out),background var(--duration) var(--ease-out),transform var(--duration-fast) var(--ease-out);white-space:nowrap;letter-spacing:.01em}.room-actions button:hover{color:var(--ink-soft);border-color:var(--line-strong);background:#00000005}.room-actions button:active{transform:scale(.97)}.room-actions button:focus-visible{outline:2px solid var(--ink);outline-offset:2px}.delete-room-btn{color:var(--status-error);border-color:#9a404033}.delete-room-btn:hover{color:#873636;border-color:#9a404066;background:#9a40400d}.copy-link-btn{padding:var(--space-2) var(--space-3);border:1px solid var(--line);border-radius:var(--radius-sm);background:transparent;font-family:var(--font-ui);font-size:.76rem;color:var(--ink-faint);cursor:pointer;transition:color var(--duration) var(--ease-out),border-color var(--duration) var(--ease-out),background var(--duration) var(--ease-out);white-space:nowrap;letter-spacing:.01em}.copy-link-btn:hover{color:var(--ink-soft);border-color:var(--line-strong);background:#00000005}.copy-link-btn:active{transform:scale(.97)}.copy-link-btn:focus-visible{outline:2px solid var(--ink);outline-offset:2px}.join-room-btn:hover{background:#5a8a5a0f;border-color:#5a8a5a40;color:var(--status-live)}.guest-list,.guest-list-full{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:var(--space-3)}.guest-card{display:flex;flex-direction:column;justify-content:space-between;padding:var(--space-4);border:1px solid var(--line);border-radius:var(--radius-md);background:#fff9;transition:background var(--duration) var(--ease-out),box-shadow var(--duration) var(--ease-out);min-height:120px}.guest-card:hover{background:#fffc}.guest-info{display:flex;flex-direction:column;gap:var(--space-2)}.guest-name{font-size:.9rem;font-weight:500;color:var(--ink)}.guest-room{font-family:SF Mono,Fira Code,Consolas,monospace;font-size:.76rem;color:var(--ink-faint)}.guest-time{font-size:.76rem;color:var(--ink-faint)}.guest-actions{display:flex;gap:var(--space-2);margin-top:auto;padding-top:var(--space-3)}.admit-btn,.admit-join-btn{flex:1;padding:var(--space-2) var(--space-3);border:none;border-radius:999px;font-family:var(--font-ui);font-size:.78rem;font-weight:500;cursor:pointer;letter-spacing:.02em;transition:background var(--duration) var(--ease-out),transform var(--duration-fast) var(--ease-out),box-shadow var(--duration) var(--ease-out);white-space:nowrap;text-align:center}.admit-btn{background:transparent;color:var(--status-live);border:1px solid rgba(90,138,90,.3)}.admit-btn:hover{background:#5a8a5a14;border-color:#5a8a5a80}.admit-join-btn{background:var(--status-live);color:var(--on-accent)}.admit-join-btn:hover{background:var(--status-live-hover);box-shadow:0 2px 8px #5a8a5a33}.admit-btn:active,.admit-join-btn:active{transform:scale(.97)}.admit-btn:disabled{opacity:.5;cursor:default;box-shadow:none}.admit-btn:focus-visible{outline:2px solid var(--status-live);outline-offset:2px}.admit-join-btn:focus-visible{outline:2px solid var(--status-live);outline-offset:2px}.nav-item[data-badge]:after{content:attr(data-badge);display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;margin-left:auto;padding:0 var(--space-1);font-size:.65rem;font-weight:600;color:var(--on-accent);background:var(--status-live);border-radius:9px}.waiting-full{min-height:200px}@media(max-width:768px){.console-body{flex-direction:column}.console-nav{width:100%;flex-direction:row;overflow-x:auto;border-right:none;border-bottom:1px solid var(--line);padding:var(--space-2) var(--space-3);gap:2px;-webkit-overflow-scrolling:touch;scrollbar-width:none;background:transparent;scroll-snap-type:x mandatory}.console-nav::-webkit-scrollbar{display:none}.nav-item{flex-shrink:0;white-space:nowrap;font-size:.8rem;padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);min-height:44px;display:flex;align-items:center;scroll-snap-align:start}.nav-item.active:before{display:none}.console-main,.console-section{padding:var(--space-5)}.console-header{padding:var(--space-3) var(--space-4)}.login-card{padding:var(--space-8) var(--space-6) var(--space-6)}.room-list,.guest-list,.guest-list-full,.briefs-date-cards,.scheduled-grid,.upcoming-list{grid-template-columns:1fr}.room-actions button{flex:1;text-align:center;min-height:44px}.admit-btn,.admit-join-btn{min-height:44px}.section-header{flex-direction:column;align-items:flex-start;gap:var(--space-3)}.section-header-actions{width:100%}.action-button{width:100%;text-align:center;padding:var(--space-3);min-height:44px}.logout-button{min-height:44px;display:flex;align-items:center}.brief-view-btn,.brief-download-btn{min-height:44px;padding:var(--space-3) var(--space-4)}.brief-card-delete{opacity:1;width:28px;height:28px}.brief-modal{max-width:100%;max-height:95vh;border-radius:var(--radius-md)}.brief-modal-overlay{padding:var(--space-2)}.header-status{display:none}}@media(max-width:480px){.console-main{padding:var(--space-4)}.console-section{padding:var(--space-4);border-radius:var(--radius-md)}.console-section h2{font-size:1.15rem}.login-card{padding:var(--space-6) var(--space-5) var(--space-5);border-radius:var(--radius-lg)}.briefs-search{width:100%;margin-top:var(--space-2)}.brief-card-actions{justify-content:flex-start}}.briefs-search{flex-shrink:0}.briefs-search input{padding:8px 14px;font-family:var(--font-ui);font-size:.85rem;border:1px solid var(--line);border-radius:var(--radius-md);background:#fffcf699;color:var(--ink);outline:none;width:220px;transition:border-color var(--duration-fast) var(--ease-out),box-shadow var(--duration-fast) var(--ease-out)}.briefs-search input:focus{border-color:var(--ink);box-shadow:0 0 0 2px #1a161417}.briefs-search input:focus-visible{outline:2px solid var(--ink);outline-offset:2px}.briefs-list{display:flex;flex-direction:column;gap:var(--space-5);margin-top:var(--space-4)}.briefs-date-group{display:flex;flex-direction:column;gap:var(--space-3)}.briefs-date-label{font-family:var(--font-ui);font-size:.78rem;font-weight:600;text-transform:uppercase;letter-spacing:.07em;color:var(--ink-soft);padding-bottom:var(--space-2);border-bottom:1px solid var(--line)}.briefs-date-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:var(--space-3)}.brief-card{position:relative;display:flex;flex-direction:column;justify-content:space-between;padding:var(--space-4);background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--radius-md);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);box-shadow:var(--glass-shadow);transition:box-shadow var(--duration-fast) var(--ease-out),border-color var(--duration) var(--ease-out);min-height:150px}.brief-card:hover{box-shadow:var(--glass-shadow-lg);border-color:var(--ink)}.brief-card-delete{position:absolute;top:10px;right:10px;width:22px;height:22px;padding:0;display:flex;align-items:center;justify-content:center;font-size:1rem;line-height:1;font-family:var(--font-ui);color:var(--ink-soft);background:transparent;border:none;border-radius:var(--radius-sm);cursor:pointer;opacity:0;transition:opacity var(--duration-fast) var(--ease-out),color var(--duration-fast) var(--ease-out),background var(--duration-fast) var(--ease-out)}.brief-card:hover .brief-card-delete{opacity:1}.brief-card-delete:hover{color:var(--status-error);background:#9a404012}.brief-card-delete:focus-visible{outline:2px solid var(--ink);outline-offset:2px;opacity:1}.brief-card-info{display:flex;flex-direction:column;gap:4px}.brief-card-date{display:flex;gap:var(--space-2);align-items:baseline}.brief-date{font-family:var(--font-ui);font-size:.88rem;font-weight:600;color:var(--ink)}.brief-time{font-family:var(--font-ui);font-size:.78rem;color:var(--ink-soft)}.brief-card-participants{font-family:var(--font-ui);font-size:.85rem;color:var(--ink)}.brief-card-meta{display:flex;gap:var(--space-2);align-items:center}.brief-duration{font-family:var(--font-ui);font-size:.75rem;color:var(--ink-soft)}.brief-status{font-family:var(--font-ui);font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;padding:2px 8px;border-radius:var(--radius-sm)}.status-completed{color:var(--status-live);background:#5a8a5a14}.status-processing{color:var(--status-amber);background:#c49a3c14}.status-failed{color:var(--status-error);background:#c43c3c14}.status-pending{color:var(--ink-soft);background:#1a16140a}.brief-card-actions{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin-top:auto;padding-top:var(--space-3)}.brief-view-btn,.brief-download-btn{padding:6px 11px;font-family:var(--font-ui);font-size:.76rem;font-weight:500;border:1px solid var(--line);border-radius:var(--radius-sm);background:transparent;color:var(--ink);cursor:pointer;transition:background var(--duration-fast) var(--ease-out),border-color var(--duration-fast) var(--ease-out);white-space:nowrap}.brief-view-btn:hover,.brief-download-btn:hover{background:#1a16140a;border-color:#1a161433}.brief-view-btn:focus-visible,.brief-download-btn:focus-visible{outline:2px solid var(--ink);outline-offset:2px}.brief-modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#00000080;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);z-index:1000;display:flex;align-items:center;justify-content:center;padding:var(--space-4)}.brief-modal{background:var(--bg);border:1px solid var(--glass-border);border-radius:var(--radius-lg);max-width:640px;width:100%;max-height:85vh;display:flex;flex-direction:column;box-shadow:var(--glass-shadow-lg)}.brief-modal-header{display:flex;justify-content:space-between;align-items:center;padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--line);flex-shrink:0}.brief-modal-header h3{font-family:var(--font-display);font-size:1.1rem;letter-spacing:.04em;color:var(--ink);margin:0}.transcript-viewer-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2000;background:#fffdf9;display:flex;flex-direction:column;opacity:0;transform:translateY(8px);transition:opacity .32s var(--ease-out),transform .32s var(--ease-out)}.transcript-viewer-overlay.is-open{opacity:1;transform:translateY(0)}.transcript-viewer-header{flex:0 0 auto;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:var(--space-3);padding:14px 22px;border-bottom:1px solid rgba(26,22,20,.08);background:#fffdf9eb;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.transcript-viewer-back,.transcript-viewer-download{font-family:var(--font-ui);font-size:.85rem;letter-spacing:.04em;color:var(--ink);background:transparent;border:1px solid rgba(26,22,20,.12);border-radius:var(--radius-sm);padding:8px 14px;cursor:pointer;display:inline-flex;align-items:center;gap:6px;transition:background var(--duration-fast) var(--ease-out),border-color var(--duration-fast) var(--ease-out)}.transcript-viewer-back{justify-self:start}.transcript-viewer-download{justify-self:end}.transcript-viewer-back:hover,.transcript-viewer-download:hover{background:#1a16140a;border-color:#1a16143d}.transcript-viewer-download{background:var(--ink);color:#fffdf9;border-color:var(--ink)}.transcript-viewer-download:hover{background:#1a1614e0;border-color:#1a1614e0}.transcript-viewer-title{font-family:var(--font-display);font-size:1rem;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-soft);text-align:center;white-space:nowrap}.transcript-viewer-frame-wrap{flex:1 1 auto;overflow:hidden;display:flex}.transcript-viewer-frame{flex:1 1 auto;width:100%;height:100%;border:0;background:#fffdf9}@media(max-width:540px){.transcript-viewer-header{padding:10px 14px;gap:10px}.transcript-viewer-back span:last-child,.transcript-viewer-download span:last-child{display:none}.transcript-viewer-back,.transcript-viewer-download{padding:8px 10px}.transcript-viewer-title{font-size:.78rem;letter-spacing:.14em}}.brief-modal-edit{margin-left:auto;margin-right:var(--space-2);background:transparent;color:var(--ink);border:1px solid var(--line);border-radius:var(--radius-sm);padding:4px 12px;font-size:.82rem;letter-spacing:.04em;cursor:pointer;transition:background var(--duration-fast) var(--ease-out),border-color var(--duration-fast) var(--ease-out)}.brief-modal-edit:hover{background:#1a16140a;border-color:#1a161433}.brief-edit-panel{padding:var(--space-3) var(--space-5) var(--space-4);border-top:1px solid var(--line);display:flex;flex-direction:column;gap:var(--space-2)}.brief-edit-input{width:100%;font-family:inherit;font-size:.92rem;line-height:1.6;color:var(--ink);background:#1a161408;border:1px solid var(--line);border-radius:var(--radius-md);padding:10px 12px;resize:vertical;min-height:70px}.brief-edit-input:focus{outline:none;border-color:#1a161452}.brief-edit-actions{display:flex;gap:var(--space-2);justify-content:flex-end}.brief-edit-go{background:var(--ink)!important;color:var(--bg, #fff)!important;border-color:var(--ink)!important}.brief-edit-go:hover:not(:disabled){background:#1a1614e0!important}.brief-edit-go:disabled,.brief-edit-cancel:disabled{opacity:.5;cursor:not-allowed}.brief-modal-body.is-rewriting{opacity:.35;filter:blur(.6px);transition:opacity .32s var(--ease-out),filter .32s var(--ease-out);pointer-events:none}.brief-modal-body.is-rewritten{animation:briefRewriteIn .42s var(--ease-out) both}@keyframes briefRewriteIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.brief-modal-close{background:none;border:none;font-size:1.4rem;color:var(--ink-soft);cursor:pointer;padding:4px 8px;border-radius:var(--radius-sm);transition:color var(--duration-fast) var(--ease-out),background var(--duration-fast) var(--ease-out)}.brief-modal-close:hover{color:var(--ink);background:#1a16140a}.brief-modal-close:focus-visible{outline:2px solid var(--ink);outline-offset:2px}.brief-modal-body{padding:var(--space-4) var(--space-5);overflow-y:auto;flex:1}.brief-modal-meta{font-family:var(--font-ui);font-size:.85rem;color:var(--ink-soft);margin-bottom:var(--space-4)}.brief-modal-body h4{font-family:var(--font-display);font-size:.95rem;color:var(--ink);letter-spacing:.04em;margin:var(--space-4) 0 var(--space-2)}.brief-modal-body ul{padding-left:20px;margin:0 0 var(--space-3)}.brief-modal-body li{font-family:var(--font-ui);font-size:.88rem;color:var(--ink);line-height:1.6;margin-bottom:var(--space-1)}.brief-modal-flagged{background:#1a16140d;border-left:3px solid var(--ink);padding:var(--space-2) var(--space-3);margin:var(--space-2) 0;border-radius:0 var(--radius-sm) var(--radius-sm) 0;font-family:var(--font-ui);font-size:.88rem;color:var(--ink);line-height:1.5}.brief-modal-nothing{font-family:var(--font-ui);font-size:.88rem;color:var(--ink-soft);font-style:italic;margin:0 0 var(--space-3)}.admin-chat-line{font-size:.88rem;line-height:1.6;font-family:var(--font-ui);color:var(--ink);margin-bottom:var(--space-2)}.admin-chat-sender{font-weight:600}.admin-chat-time{font-size:.72rem;color:var(--ink-soft);margin-left:var(--space-2)}.settings-form{display:flex;flex-direction:column;gap:var(--space-5);max-width:420px}.settings-form select{padding:var(--space-3) var(--space-4);border:1px solid var(--line);border-radius:var(--radius-sm);font-family:var(--font-ui);font-size:.95rem;color:var(--ink);background:#fff9;outline:none;transition:border-color var(--duration) var(--ease-out),box-shadow var(--duration) var(--ease-out)}.settings-form select:focus{border-color:var(--ink);box-shadow:0 0 0 3px #1a161414}.settings-form select:focus-visible{outline:2px solid var(--ink);outline-offset:2px}.settings-actions{display:flex;align-items:center;gap:var(--space-4)}.settings-saved{font-size:.82rem;font-weight:500;color:var(--status-live);animation:savedFeedback 2s var(--ease-out) forwards}@keyframes savedFeedback{0%{opacity:0;transform:translateY(4px)}15%{opacity:1;transform:translateY(0)}70%{opacity:1}to{opacity:0}}.modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#00000080;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);z-index:1000;display:flex;align-items:center;justify-content:center;padding:var(--space-4)}.confirm-modal{background:var(--bg);border:1px solid var(--glass-border);border-radius:var(--radius-lg);max-width:380px;width:100%;padding:var(--space-8) var(--space-6) var(--space-6);box-shadow:var(--glass-shadow-lg);animation:cardEnter .25s var(--ease-out) both;text-align:center}.confirm-modal-message{font-family:var(--font-ui);font-size:.92rem;color:var(--ink);line-height:1.6;margin-bottom:var(--space-6)}.confirm-modal-actions{display:flex;gap:var(--space-3);justify-content:center}.confirm-btn-secondary{padding:var(--space-2) var(--space-5);border:1px solid var(--line);border-radius:var(--radius-sm);background:transparent;font-family:var(--font-ui);font-size:.82rem;color:var(--ink-soft);cursor:pointer;transition:color var(--duration) var(--ease-out),border-color var(--duration) var(--ease-out),background var(--duration) var(--ease-out)}.confirm-btn-secondary:hover{color:var(--ink);border-color:var(--line-strong);background:#00000005}.confirm-btn-secondary:focus-visible{outline:2px solid var(--ink);outline-offset:2px}.confirm-btn-destructive{padding:var(--space-2) var(--space-5);background:var(--status-error);color:var(--on-accent);border:none;border-radius:var(--radius-sm);font-family:var(--font-ui);font-size:.82rem;font-weight:500;cursor:pointer;transition:background var(--duration) var(--ease-out),transform var(--duration-fast) var(--ease-out)}.confirm-btn-destructive:hover{background:#873636}.confirm-btn-destructive:active{transform:scale(.97)}.confirm-btn-destructive:focus-visible{outline:2px solid var(--status-error);outline-offset:2px}.room-name-modal{background:var(--bg);border:1px solid var(--glass-border);border-radius:var(--radius-lg);max-width:380px;width:100%;padding:var(--space-8) var(--space-6) var(--space-6);box-shadow:var(--glass-shadow-lg);animation:cardEnter .25s var(--ease-out) both;text-align:center}.room-name-modal h3{font-family:var(--font-display);font-size:1.1rem;letter-spacing:.04em;color:var(--ink);margin-bottom:var(--space-5)}.room-name-modal .form-field{text-align:left;margin-bottom:var(--space-5)}.room-name-input{width:100%;padding:var(--space-3) var(--space-4);border:1px solid var(--line);border-radius:var(--radius-sm);font-family:var(--font-ui);font-size:.88rem;color:var(--ink);background:transparent;outline:none;transition:border-color var(--duration) var(--ease-out)}.room-name-input:focus{border-color:var(--ink)}.room-name-input::placeholder{color:var(--ink-soft)}.room-name-modal-actions{display:flex;gap:var(--space-3);justify-content:center}.inline-error{font-size:.82rem;color:var(--status-error);background:#9a40400f;border:1px solid rgba(154,64,64,.12);border-radius:var(--radius-sm);padding:var(--space-2) var(--space-3);line-height:1.5;animation:cardEnter .2s var(--ease-out) both}.field-error{font-size:.78rem;color:var(--status-error);margin-top:4px;line-height:1.4;animation:cardEnter .2s var(--ease-out) both}.is-invalid,input.is-invalid,select.is-invalid,textarea.is-invalid{border-color:var(--status-error)!important;box-shadow:0 0 0 1px #9a404040!important}.copied-state{color:var(--status-live)!important;border-color:#5a8a5a40!important}.datepicker-wrapper,.timepicker-wrapper{position:relative}.datepicker-display,.timepicker-display{cursor:pointer;caret-color:transparent}.datepicker-dropdown{position:absolute;top:calc(100% + var(--space-2));left:0;z-index:50;width:280px;background:var(--glass-bg-heavy);border:1px solid var(--glass-border);border-radius:var(--radius-lg);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);box-shadow:var(--glass-shadow-lg);padding:var(--space-4);animation:cardEnter .2s var(--ease-out) both}.datepicker-nav{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-3)}.datepicker-title{font-family:var(--font-display);font-size:.95rem;letter-spacing:.04em;color:var(--ink)}.datepicker-arrow{width:28px;height:28px;border:none;border-radius:var(--radius-sm);background:transparent;font-size:1.2rem;color:var(--ink-soft);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background var(--duration-fast) var(--ease-out),color var(--duration-fast) var(--ease-out)}.datepicker-arrow:hover{background:#1a16140a;color:var(--ink)}.datepicker-arrow:focus-visible{outline:2px solid var(--ink);outline-offset:2px}.datepicker-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px;text-align:center}.datepicker-day-label{font-size:.68rem;font-weight:600;color:var(--ink-faint);text-transform:uppercase;letter-spacing:.06em;padding:var(--space-1) 0}.datepicker-cell{width:34px;height:34px;border:none;border-radius:var(--radius-sm);background:transparent;font-family:var(--font-ui);font-size:.82rem;color:var(--ink);cursor:pointer;display:flex;align-items:center;justify-content:center;margin:0 auto;transition:background var(--duration-fast) var(--ease-out),color var(--duration-fast) var(--ease-out)}.datepicker-cell:hover{background:var(--brown-soft)}.datepicker-cell:focus-visible{outline:2px solid var(--ink);outline-offset:-2px}.datepicker-empty{cursor:default}.datepicker-today{font-weight:700;color:var(--ink);box-shadow:inset 0 0 0 2px var(--ink);border-radius:50%}.datepicker-selected,.datepicker-selected:hover{background:var(--ink);color:var(--on-accent)}.timepicker-dropdown{position:absolute;top:calc(100% + var(--space-2));left:0;z-index:50;width:160px;max-height:240px;overflow-y:auto;background:var(--glass-bg-heavy);border:1px solid var(--glass-border);border-radius:var(--radius-lg);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);box-shadow:var(--glass-shadow-lg);padding:var(--space-2);animation:cardEnter .2s var(--ease-out) both}.timepicker-dropdown::-webkit-scrollbar{width:4px}.timepicker-dropdown::-webkit-scrollbar-thumb{background:#1a16141f;border-radius:2px}.timepicker-option{display:block;width:100%;padding:var(--space-2) var(--space-3);border:none;border-radius:var(--radius-sm);background:transparent;font-family:var(--font-ui);font-size:.84rem;color:var(--ink);cursor:pointer;text-align:left;transition:background var(--duration-fast) var(--ease-out)}.timepicker-option:hover{background:var(--brown-soft)}.timepicker-option:focus-visible{outline:2px solid var(--ink);outline-offset:-2px}.timepicker-selected,.timepicker-selected:hover{background:var(--ink);color:var(--on-accent)}.schedule-modal,.invite-modal{background:var(--bg);border:1px solid var(--glass-border);border-radius:var(--radius-lg);max-width:520px;width:100%;max-height:90vh;display:flex;flex-direction:column;box-shadow:var(--glass-shadow-lg);animation:cardEnter .25s var(--ease-out) both}.schedule-modal-header{display:flex;justify-content:space-between;align-items:center;padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--line);flex-shrink:0}.schedule-modal-header h3{font-family:var(--font-display);font-size:1.1rem;letter-spacing:.04em;color:var(--ink);margin:0}.schedule-form{display:flex;flex-direction:column;gap:var(--space-4);padding:var(--space-5);overflow-y:auto;flex:1}.schedule-form select,.schedule-form textarea{padding:var(--space-3) var(--space-4);border:1px solid var(--line);border-radius:var(--radius-sm);font-family:var(--font-ui);font-size:.95rem;color:var(--ink);background:#fff9;outline:none;transition:border-color var(--duration) var(--ease-out),box-shadow var(--duration) var(--ease-out)}.schedule-form select:focus,.schedule-form textarea:focus{border-color:var(--ink);box-shadow:0 0 0 3px #1a161414}.schedule-form select:focus-visible,.schedule-form textarea:focus-visible{outline:2px solid var(--ink);outline-offset:2px}.schedule-form textarea{resize:vertical;min-height:60px;line-height:1.5}.schedule-submit{margin-top:var(--space-2)}.schedule-form-error{font-size:.82rem;font-weight:500;color:#a15252;min-height:1em;margin-top:-.2rem}.invite-text{font-family:var(--font-ui);font-size:.88rem;line-height:1.72;color:var(--ink);padding:var(--space-5);white-space:pre-wrap;word-break:break-word;background:#fffcf680;border-top:none;overflow-y:auto;flex:1;margin:0}.invite-actions{display:flex;gap:var(--space-3);padding:var(--space-4) var(--space-5);border-top:1px solid var(--line);flex-shrink:0}.scheduled-list{display:flex;flex-direction:column;gap:var(--space-6)}.scheduled-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:var(--space-3)}.past-meetings-section{display:flex;flex-direction:column;gap:var(--space-3)}.past-meetings-header{font-family:var(--font-ui);font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--ink-faint)}.past-meetings-list{display:flex;flex-direction:column;gap:1px;border:1px solid var(--line);border-radius:var(--radius-md);overflow:hidden}.past-meeting-row{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-3) var(--space-4);background:var(--bg);cursor:pointer;transition:background var(--duration-fast) var(--ease-out);border-bottom:1px solid var(--line)}.past-meeting-row:last-child{border-bottom:none}.past-meeting-row:hover{background:#ffffffb3}.past-meeting-row.cancelled{opacity:.5}.past-meeting-row.expanded{padding:0;cursor:default}.past-meeting-row.expanded .sched-card{border:none;border-radius:0;width:100%}.past-meeting-title{font-family:var(--font-ui);font-size:.85rem;font-weight:500;color:var(--ink);flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.past-meeting-date{font-size:.78rem;color:var(--ink-soft);white-space:nowrap}.past-meeting-invitee{font-size:.78rem;color:var(--ink-faint);white-space:nowrap}.past-meeting-status{font-size:.68rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--ink-faint)}.past-show-more-btn{align-self:flex-start;padding:var(--space-2) var(--space-4);border:1px solid var(--line);border-radius:var(--radius-sm);background:transparent;font-family:var(--font-ui);font-size:.78rem;color:var(--ink-soft);cursor:pointer;transition:background var(--duration-fast) var(--ease-out),color var(--duration-fast) var(--ease-out)}.past-show-more-btn:hover{background:#1a16140a;color:var(--ink)}.sched-card{display:flex;flex-direction:column;justify-content:space-between;padding:var(--space-4);border:1px solid var(--line);border-radius:var(--radius-md);background:#ffffff80;transition:border-color var(--duration) var(--ease-out),box-shadow var(--duration) var(--ease-out),background var(--duration) var(--ease-out);animation:cardEnter .3s var(--ease-out) both;min-height:160px}.sched-card:hover{background:#ffffffb3;box-shadow:0 2px 8px #1a16140a}.sched-card.cancelled{opacity:.5}.sched-card-info{display:flex;flex-direction:column;gap:4px;min-width:0}.sched-card-title{font-size:.92rem;font-weight:500;color:var(--ink)}.sched-card-datetime{display:flex;gap:var(--space-2);align-items:baseline;flex-wrap:wrap}.sched-date{font-size:.84rem;color:var(--ink)}.sched-time{font-size:.78rem;color:var(--ink-soft)}.sched-card-meta{display:flex;gap:var(--space-3);align-items:center;flex-wrap:wrap}.sched-invitee{font-size:.82rem;color:var(--ink-soft)}.sched-duration{font-size:.75rem;color:var(--ink-faint)}.sched-status{font-size:.68rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;padding:2px 8px;border-radius:var(--radius-sm)}.status-scheduled{color:var(--status-live);background:#5a8a5a14}.status-cancelled{color:var(--ink-faint);background:#1a16140a}.status-past{color:var(--ink-soft);background:#1a16140a}.sched-card-actions{display:flex;gap:var(--space-2);flex-wrap:wrap;margin-top:auto;padding-top:var(--space-3)}.sched-action-btn{padding:var(--space-2) var(--space-3);border:1px solid var(--line);border-radius:var(--radius-sm);background:transparent;font-family:var(--font-ui);font-size:.76rem;color:var(--ink-faint);cursor:pointer;transition:color var(--duration) var(--ease-out),border-color var(--duration) var(--ease-out),background var(--duration) var(--ease-out),transform var(--duration-fast) var(--ease-out);white-space:nowrap;letter-spacing:.01em}.sched-action-btn:hover{color:var(--ink-soft);border-color:var(--line-strong);background:#00000005}.sched-action-btn:active{transform:scale(.97)}.sched-action-btn:focus-visible{outline:2px solid var(--ink);outline-offset:2px}.sched-cancel-btn:hover{color:var(--status-error);border-color:#9a404033;background:#9a40400a}.sched-action-btn.sched-send-btn{color:var(--ink);border-color:#1a16142e}.sched-action-btn.sched-send-btn:hover{background:#1a16140d;border-color:var(--ink)}.sched-sent-state{color:var(--status-live);border-color:#5a8a5a33}.action-button.sched-sent-state{background:#5a8a5a1a;color:var(--status-live);pointer-events:none;box-shadow:none}.sched-sent-label{font-size:.72rem;color:var(--status-live);font-weight:500}.sched-failed-label{font-size:.72rem;color:var(--brown);font-weight:500;padding:2px 8px;border-radius:999px;background:#8b73551f;cursor:help}.sched-retry-btn{color:var(--brown);border-color:#8b735566}.sched-materialize-chip{font-size:.72rem;color:var(--ink-soft);font-style:italic;margin-left:.5rem}.sched-room-name{font-size:.72rem;color:var(--ink);font-weight:500}.upcoming-panel{margin-bottom:var(--space-6);padding:var(--space-5);background:#1a161408;border:1px solid rgba(26,22,20,.09);border-radius:var(--radius-md);animation:cardEnter .3s var(--ease-out) both}.upcoming-panel .panel-title{color:var(--ink)}.upcoming-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:var(--space-3)}.upcoming-card{display:flex;flex-direction:column;justify-content:space-between;padding:var(--space-4);border:1px solid var(--line);border-radius:var(--radius-md);background:#fff9;transition:background var(--duration) var(--ease-out);min-height:100px}.upcoming-card:hover{background:#fffc}.upcoming-info{display:flex;flex-direction:column;gap:var(--space-2);min-width:0}.upcoming-title{font-size:.88rem;font-weight:500;color:var(--ink)}.upcoming-datetime{font-size:.78rem;color:var(--ink-soft)}.upcoming-invitee{font-size:.78rem;color:var(--ink-faint)}.upcoming-room-name{font-size:.72rem;color:var(--ink);font-weight:500}.upcoming-actions{display:flex;gap:var(--space-2);margin-top:var(--space-3)}.upcoming-join-btn{display:inline-flex;align-items:center;justify-content:center;padding:.45rem 1rem;background:var(--ink);color:var(--on-accent);border-radius:var(--radius-sm);font-family:Avenir Next,Helvetica Neue,Arial,sans-serif;font-size:.8rem;font-weight:500;text-decoration:none;transition:opacity var(--duration-fast) var(--ease-out);white-space:nowrap}.upcoming-join-btn:hover{opacity:.8}.upcoming-join-btn:focus-visible{outline:2px solid var(--ink);outline-offset:2px}.upcoming-actions .copy-link-btn{flex:1}@media(max-width:768px){.sched-action-btn{flex:1;text-align:center;min-height:44px}.timepicker-option{min-height:44px;display:flex;align-items:center}.datepicker-cell{width:40px;height:40px}.upcoming-actions{flex-direction:column}.upcoming-join-btn,.upcoming-actions .copy-link-btn{width:100%;text-align:center;min-height:44px}.schedule-modal,.invite-modal{max-width:100%;max-height:95vh;border-radius:var(--radius-md)}.settings-form{max-width:100%}.invite-actions{flex-wrap:wrap}.invite-actions .action-button,.invite-actions .sched-action-btn{flex:1;text-align:center}}@media(max-width:480px){.sched-card-actions{flex-direction:column}.sched-action-btn{width:100%}.schedule-form{padding:var(--space-4)}.schedule-modal-header{padding:var(--space-3) var(--space-4)}.datepicker-dropdown{position:fixed;top:auto;bottom:0;left:0;width:100%;border-radius:var(--radius-lg) var(--radius-lg) 0 0;max-height:50vh;z-index:100;padding:var(--space-5)}.timepicker-dropdown{position:fixed;top:auto;bottom:0;left:0;width:100%;border-radius:var(--radius-lg) var(--radius-lg) 0 0;max-height:50vh;z-index:100}.confirm-modal{max-width:100%;border-radius:var(--radius-md)}}.tz-chips{display:flex;gap:.4rem;flex-wrap:wrap;margin-bottom:.4rem}.tz-chip{background:#1a16140f;color:var(--ink);border:1px solid var(--line);border-radius:999px;padding:.3rem .75rem;font-family:var(--font-ui);font-size:.82rem;cursor:pointer;transition:all var(--duration) var(--ease-out)}.tz-chip:hover{background:#1a16141c}.tz-chip-active{background:var(--ink);color:#fff;border-color:var(--ink)}.tz-chip-more{background:transparent;color:var(--ink-soft);font-style:italic}.tz-field input[type=text]{margin-top:.2rem}.contacts-search{background:transparent;border:1px solid var(--line);border-radius:var(--radius-sm);padding:.5rem .75rem;font-family:var(--font-ui);font-size:.9rem;color:var(--ink);min-width:220px}.contacts-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:1rem;margin-top:1rem}.contact-card{background:var(--glass-bg);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border);border-radius:var(--radius-md);padding:1rem 1.1rem;box-shadow:var(--glass-shadow);cursor:pointer;transition:transform var(--duration) var(--ease-snap),box-shadow var(--duration) var(--ease-out);position:relative}.contact-card:hover{transform:translateY(-2px);box-shadow:var(--glass-shadow-lg)}.contact-card-name{font-family:var(--font-display);font-size:1.2rem;color:var(--ink);margin-bottom:.15rem;letter-spacing:.02em}.contact-card-email{font-family:var(--font-ui);font-size:.82rem;color:var(--ink-soft);margin-bottom:.4rem}.contact-card-meta{font-family:var(--font-ui);font-size:.8rem;color:var(--ink-soft)}.contact-badge{position:absolute;top:.7rem;right:.7rem;background:var(--ink);color:#fff;font-family:var(--font-ui);font-size:.7rem;padding:.15rem .5rem;border-radius:999px}.contact-card-delete{position:absolute;bottom:.5rem;right:.5rem;width:1.6rem;height:1.6rem;border:none;background:transparent;color:var(--ink-soft);font-size:1.15rem;line-height:1;border-radius:999px;cursor:pointer;opacity:0;transition:opacity var(--duration) var(--ease-out),background var(--duration) var(--ease-out),color var(--duration) var(--ease-out)}.contact-card:hover .contact-card-delete,.contact-card:focus-within .contact-card-delete{opacity:1}.contact-card-delete:hover{background:#b43c3c1f;color:#b43c3c}.contact-profile{display:flex;flex-direction:column;gap:1rem}.contact-profile-topbar{display:flex;align-items:center;gap:.8rem;flex-wrap:wrap}.contact-back-btn{background:transparent;border:none;color:var(--ink-soft);font-family:var(--font-ui);font-size:.85rem;cursor:pointer;padding:.35rem .6rem;border-radius:var(--radius-sm);transition:background var(--duration) var(--ease-out);white-space:nowrap;flex-shrink:0}.contact-back-btn:hover{background:#1a16140d;color:var(--ink)}.contact-profile-name{font-family:var(--font-display);font-size:1.5rem;margin:0;flex-shrink:0}.contact-actions-bar{display:flex;gap:.5rem;flex-wrap:wrap;margin-left:auto;align-items:center}.contact-stats{display:flex;gap:0;border:1px solid var(--glass-border);border-radius:var(--radius-md);overflow:hidden;background:var(--glass-bg);flex-shrink:0}.contact-stat{padding:.4rem 1rem;text-align:center;border-right:1px solid var(--glass-border)}.contact-stat:last-child{border-right:none}.contact-stat-value{font-family:var(--font-display);font-size:1.05rem;color:var(--ink);line-height:1.2}.contact-stat-label{font-family:var(--font-ui);font-size:.62rem;color:var(--ink-soft);text-transform:uppercase;letter-spacing:.06em}.contact-panel{background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--radius-md);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);padding:.9rem 1.1rem;box-shadow:var(--glass-shadow)}.contact-panel .panel-title{font-family:var(--font-display);font-size:1rem;margin:0 0 .6rem;color:var(--ink);letter-spacing:.03em}.contact-panel .panel-subtitle{font-family:var(--font-ui);font-size:.78rem;text-transform:uppercase;letter-spacing:.08em;color:var(--ink-soft);margin:1.2rem 0 .6rem}.contact-prefs-form{display:grid;grid-template-columns:1fr 1fr 1fr;gap:.5rem .75rem;font-family:var(--font-ui)}.contact-prefs-form .tz-field,.contact-prefs-form .prefs-notes-field,.contact-prefs-actions{grid-column:1 / -1}.contact-prefs-form .form-field{gap:.2rem}.contact-prefs-form .form-field label{font-size:.68rem;font-weight:600;color:var(--ink-soft);text-transform:uppercase;letter-spacing:.075em}.contact-prefs-form .form-field input,.contact-prefs-form .form-field select,.contact-prefs-form .form-field textarea{padding:.45rem .65rem;border:1px solid var(--line);border-radius:var(--radius-sm);font-family:var(--font-ui);font-size:.9rem;color:var(--ink);background:#fff9;outline:none;transition:border-color .18s var(--ease-out),box-shadow .18s var(--ease-out);line-height:1.35}.contact-prefs-form .form-field select{-moz-appearance:none;appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'><path d='M1 1l4 4 4-4' fill='none' stroke='%231a1614' stroke-opacity='0.5' stroke-width='1.3'/></svg>");background-repeat:no-repeat;background-position:right .7rem center;padding-right:1.6rem;cursor:pointer}.contact-prefs-form .form-field textarea{resize:vertical;min-height:3.4em;font-family:var(--font-ui)}.contact-prefs-form .form-field input:focus,.contact-prefs-form .form-field select:focus,.contact-prefs-form .form-field textarea:focus{border-color:var(--ink);box-shadow:0 0 0 3px #1a161414}.contact-prefs-form .form-field input[type=time]::-webkit-calendar-picker-indicator{opacity:.45;cursor:pointer}.contact-prefs-actions{display:flex;gap:.5rem;justify-content:flex-end;align-items:center;margin-top:.2rem}.contact-prefs-actions .prefs-feedback{margin-right:auto;font-size:.82rem;font-weight:500;color:var(--ink-soft);min-height:1em}.contact-prefs-actions .prefs-feedback.ok{color:#5a8a5a}.contact-prefs-actions .prefs-feedback.err{color:#a15252}.contact-prefs-actions .action-button.archive{background:transparent;color:var(--ink-soft);border:1px solid var(--line)}.contact-prefs-actions .action-button.archive:hover{color:#a15252;border-color:#a1525259}.series-card{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:.9rem 1rem;border:1px solid var(--line);border-radius:var(--radius-md);margin-bottom:.6rem;background:#fffcf680}.series-card.ended{opacity:.6}.series-card-title{font-family:var(--font-display);font-size:1.05rem;color:var(--ink)}.series-card-meta{font-family:var(--font-ui);font-size:.82rem;color:var(--ink-soft);margin-top:.15rem}.series-card-actions{display:flex;gap:.4rem}.library-dropzone{margin:1rem 0;padding:1.4rem 1.2rem;border:1.5px dashed rgba(26,22,20,.18);border-radius:var(--radius-lg, 1.1rem);background:#fffcf68c;text-align:center;transition:border-color .2s var(--ease-out, ease),background .2s var(--ease-out, ease)}.library-dropzone.dragging{border-color:var(--ink, #1a1614);background:#fffcf6eb}.library-dropzone-text{margin:0 0 .25rem;font-family:Times New Roman,Times,Georgia,serif;font-size:1.05rem;color:var(--ink, #1a1614)}.library-dropzone-sub{margin:0;font-size:.82rem;color:var(--ink-soft, rgba(26, 22, 20, .58))}.library-uploads{margin:.5rem 0 1rem;display:flex;flex-direction:column;gap:.35rem}.library-upload-row{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.55rem .85rem;background:#fffcf6b3;border:1px solid var(--line, rgba(26, 22, 20, .1));border-radius:var(--radius-md, .8rem);font-size:.9rem}.library-upload-label{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.library-upload-status{font-size:.82rem;color:var(--ink-soft, rgba(26, 22, 20, .58))}.library-upload-status.ok{color:#5a8a5a}.library-upload-status.err{color:#a15252}.library-list{display:flex;flex-direction:column;gap:.4rem}.library-row{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.7rem .95rem;background:#fffcf6c7;border:1px solid var(--line, rgba(26, 22, 20, .1));border-radius:var(--radius-md, .8rem);transition:background .2s var(--ease-out, ease)}.library-row:hover{background:#fffcf6f2}.library-row-main{min-width:0;flex:1}.library-row-title{font-family:Times New Roman,Times,Georgia,serif;font-size:1.02rem;color:var(--ink, #1a1614);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.library-row-meta{margin-top:.15rem;font-size:.8rem;color:var(--ink-soft, rgba(26, 22, 20, .58))}.library-row-delete{background:transparent;border:1px solid var(--line, rgba(26, 22, 20, .1));color:var(--ink-soft, rgba(26, 22, 20, .58));padding:.35rem .75rem;border-radius:var(--radius-sm, .45rem);font-size:.82rem;cursor:pointer;transition:all .15s var(--ease-out, ease)}.library-row-delete:hover{color:#a15252;border-color:#a1525259}.action-button.danger{background:#a15252;color:#fff;border-color:#a15252}.action-button.danger:hover{background:#8f4545}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
