@import "https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;500;600;700&display=swap";:root{--bg-color:#0a0a0c;--text-primary:#fff;--text-secondary:#fff9;--glass-bg:#ffffff08;--glass-border:#ffffff14;--glass-hover:#ffffff14;--accent:#6d28d9;--accent-hover:#7c3aed;--accent-glow:#7c3aed66}*{box-sizing:border-box;margin:0;padding:0}html,body,#root{width:100%;height:100%}body{background-color:var(--bg-color);color:var(--text-primary);-webkit-font-smoothing:antialiased;font-family:Outfit,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;overflow-x:hidden}body:before{content:"";z-index:-1;pointer-events:none;background-color:#0000;background-image:radial-gradient(circle at 20%,#6d28d91f,#0000 30%),radial-gradient(circle at 80% 30%,#38bdf817,#0000 28%);background-position:0 0,0 0;background-repeat:repeat,repeat;background-size:100% 100%;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:border-box,border-box;animation:18s ease-in-out infinite alternate bg-drift;position:fixed;inset:0}@keyframes bg-drift{0%{background-position:0 0,100% 0;transform:translate(0)scale(1)}33%{transform:translate(2%,3%)scale(1.02)}66%{transform:translate(-2%,-2%)scale(.98)}to{transform:translate(1%,4%)scale(1.01)}}a{color:inherit;text-decoration:none}button{cursor:pointer;color:inherit;background:0 0;border:none;font-family:inherit}.glass-panel{background:var(--glass-bg);-webkit-backdrop-filter:blur(12px);border:1px solid var(--glass-border);border-radius:24px;transition:transform .3s cubic-bezier(.4,0,.2,1),box-shadow .3s cubic-bezier(.4,0,.2,1);box-shadow:0 8px 32px #0000004d}.glass-panel:hover{box-shadow:0 12px 40px 0 #0006, 0 0 20px 0 var(--glass-border);transform:translateY(-2px)}.modern-btn{background:var(--text-primary);color:var(--bg-color);text-transform:uppercase;letter-spacing:.1em;border:1px solid #0000;border-radius:9999px;width:100%;padding:12px 24px;font-size:.875rem;font-weight:600;transition:all .2s}.modern-btn:hover{background:#ffffffe6;transform:scale(1.02)}.modern-btn-outline{color:var(--text-primary);border:1px solid var(--glass-border);background:0 0}.modern-btn-outline:hover{background:var(--glass-hover);border-color:#fff3}.text-overline{text-transform:uppercase;letter-spacing:.3em;color:var(--text-secondary);font-size:.75rem;font-weight:500}.text-title{letter-spacing:-.02em;background:linear-gradient(to bottom right,#fff,#ffffff80);-webkit-text-fill-color:transparent;-webkit-background-clip:text;font-size:2.5rem;font-weight:600}.text-subtitle{color:var(--text-secondary);margin-top:8px;font-size:.875rem}.app-loading{text-transform:uppercase;letter-spacing:.35em;min-height:100vh;color:var(--text-secondary);justify-content:center;align-items:center;font-size:.75rem;display:flex}.auth-container{justify-content:center;align-items:center;min-height:100vh;padding:0 24px;display:flex}.auth-card{background:#14141999;width:100%;max-width:440px;padding:40px}.auth-title{margin-top:16px}.auth-buttons{flex-direction:column;gap:16px;margin-top:32px;display:flex}.auth-footer{color:var(--text-secondary);text-align:center;margin-top:24px;font-size:.875rem}.auth-link{color:var(--accent-hover);cursor:pointer;font-weight:500;text-decoration:none;transition:color .2s}.auth-link:hover{color:#fff;text-decoration:underline}.dashboard-container{min-height:100vh;position:relative}.dashboard-canvas{width:100vw;height:100vh;position:relative;overflow:hidden}.dashboard-bg-gradient{pointer-events:none;background:radial-gradient(circle at top,#ffffff08,#0000 60%);position:absolute;inset:0}.fab-btn{z-index:40;background:var(--accent);color:#fff;width:56px;height:56px;box-shadow:0 0 20px var(--accent-glow);border:1px solid #fff3;border-radius:50%;justify-content:center;align-items:center;font-size:1.5rem;transition:box-shadow .3s,transform .2s;display:flex;position:absolute;bottom:32px;right:32px}.fab-btn:hover{background:var(--accent-hover);box-shadow:0 0 30px #7c3aed99}.add-widget-menu{z-index:40;background:#0a0a0fcc;width:192px;padding:12px;position:absolute;bottom:104px;right:32px}.widget-menu-item{text-align:left;text-transform:uppercase;letter-spacing:.2em;width:100%;color:var(--text-secondary);border-radius:12px;margin-bottom:4px;padding:10px 16px;font-size:.75rem;transition:all .2s;display:block}.widget-menu-item:last-child{margin-bottom:0}.widget-menu-item:hover{background:var(--glass-hover);color:#fff}.preferences-container{min-height:100vh}.preferences-content{max-width:800px;margin:0 auto;padding:112px 24px 80px}.preferences-card{background:#14141999;padding:40px}.pref-section{border:1px solid var(--glass-border);background:#0003;border-radius:20px;padding:24px}.user-profile{align-items:center;gap:20px;margin-top:32px;display:flex}.profile-img{border:2px solid var(--glass-border);object-fit:cover;border-radius:50%;width:72px;height:72px}.profile-name{font-size:1.25rem;font-weight:500}.profile-email{color:var(--text-secondary);margin-top:4px;font-size:.875rem}.pref-grid{gap:24px;margin-top:32px;display:grid}@media (width>=768px){.pref-grid{grid-template-columns:1fr 1fr}}.pref-section-block{margin-top:24px}.pref-options{flex-direction:column;gap:16px;margin-top:20px;display:flex}.pref-radio,.pref-checkbox{color:var(--text-secondary);cursor:pointer;align-items:center;gap:12px;font-size:.875rem;transition:color .2s;display:flex}.pref-radio:hover,.pref-checkbox:hover{color:#fff}.pref-radio input[type=radio],.pref-checkbox input[type=checkbox]{accent-color:var(--accent);cursor:pointer;width:16px;height:16px}.pref-select{border:1px solid var(--glass-border);color:#fff;background:#0006;border-radius:12px;outline:none;width:100%;margin-top:16px;padding:12px 16px;font-family:inherit;font-size:.875rem;transition:border-color .2s}.pref-select:focus{border-color:var(--accent)}.pref-select option{color:#fff;background:#111}.logout-btn{margin-top:20px}.navbar-trigger{z-index:40;height:60px;position:fixed;top:0;left:0;right:0}.navbar{z-index:50;-webkit-backdrop-filter:blur(16px);border-bottom:1px solid var(--glass-border);background:#0a0a0ccc;position:fixed;top:0;left:0;right:0}.navbar-content{justify-content:space-between;align-items:center;max-width:1200px;margin:0 auto;padding:16px 24px;display:flex}.navbar-brand{text-transform:uppercase;letter-spacing:.2em;background:linear-gradient(90deg, #fff, var(--text-secondary));-webkit-text-fill-color:transparent;-webkit-background-clip:text;font-size:.875rem;font-weight:700}.navbar-links{align-items:center;gap:32px;display:flex}.nav-link{text-transform:uppercase;letter-spacing:.2em;color:var(--text-secondary);font-size:.75rem;font-weight:500;transition:color .2s}.nav-link:hover{color:#fff}.widget-container{cursor:grab;background:#14141966;padding:20px;position:absolute}.widget-container.dragging{cursor:grabbing;z-index:50;border-color:var(--accent);box-shadow:0 12px 40px 0 #7c3aed26, 0 0 20px 0 var(--accent-glow)}.widget-header{border-bottom:1px solid var(--glass-border);justify-content:space-between;align-items:center;margin-bottom:16px;padding-bottom:12px;display:flex}.widget-close{color:var(--text-secondary);padding:4px;font-size:1.25rem;line-height:1;transition:color .2s}.widget-close:hover{color:#ef4444}.widget-content{color:#ffffffe6;font-size:.875rem}.widget-clock{letter-spacing:-.05em;font-size:2rem;font-weight:300}.widget-textarea{resize:none;border:1px solid var(--glass-border);color:#fff;background:#0003;border-radius:12px;outline:none;width:100%;height:80px;padding:12px;font-family:inherit;font-size:.875rem;transition:border-color .2s}.widget-textarea:focus{border-color:var(--accent)}.fc-backdrop{z-index:100;-webkit-backdrop-filter:blur(10px);background:#000000b3;justify-content:center;align-items:center;padding:5vh 5vw;display:flex;position:fixed;inset:0}.fc-modal{background:#08080af5;border:1px solid #ffffff17;border-radius:28px;flex-direction:column;width:80vw;max-width:900px;height:80vh;display:flex;position:relative;overflow:hidden;box-shadow:0 40px 80px #000000b3,inset 0 1px #ffffff0d}.fc-close{z-index:10;color:#ffffff73;cursor:pointer;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;font-family:inherit;font-size:.8rem;transition:background .2s,color .2s;display:flex;position:absolute;top:18px;right:18px}.fc-close:hover{color:#fff;background:#ffffff1a}.fc-phase{text-align:center;flex-direction:column;flex:1;align-items:center;gap:18px;padding:48px 52px 40px;display:flex;overflow-y:auto}.fc-phase-center{text-align:center;justify-content:center;align-items:center}.fc-phase-capture{text-align:center;align-items:center;gap:20px;padding:32px 52px 36px}.fc-overline{text-transform:uppercase;letter-spacing:.3em;color:#ffffff59;font-size:.68rem;font-weight:500}.fc-title{letter-spacing:-.025em;color:#fff;font-size:1.75rem;font-weight:600;line-height:1.2}.fc-sub{color:#ffffff73;max-width:520px;font-size:.875rem;line-height:1.65}.fc-sub strong{color:#ffffffbf}.fc-list{text-align:left;background:#ffffff08;border:1px solid #ffffff0f;border-radius:16px;flex-direction:column;gap:10px;width:100%;padding:20px;list-style:none;display:flex}.fc-list li{color:#ffffff80;padding-left:18px;font-size:.83rem;position:relative}.fc-list li:before{content:"—";color:#fff3;position:absolute;left:0}.fc-btn{letter-spacing:.03em;cursor:pointer;color:#000;background:#fff;border:none;border-radius:12px;justify-content:center;align-items:center;padding:11px 32px;font-family:inherit;font-size:.85rem;font-weight:600;transition:opacity .2s;display:inline-flex}.fc-row-btns .fc-btn{flex:1;align-self:auto}.fc-btn:hover{opacity:.9}.fc-btn-outline{color:#fff9;background:0 0;border:1px solid #ffffff26}.fc-btn-outline:hover{color:#fff;background:#ffffff0d}.fc-row-btns{gap:12px;width:100%;margin-top:4px;display:flex}.fc-policy-scroll{text-align:left;background:#ffffff05;border:1px solid #ffffff0f;border-radius:14px;flex:1;width:100%;min-height:0;padding:20px 24px;overflow-y:auto}.fc-policy-text{color:#ffffff61;white-space:pre-wrap;word-break:break-word;font-family:inherit;font-size:.78rem;line-height:1.75}.fc-checks{text-align:left;flex-direction:column;gap:12px;width:100%;display:flex}.fc-check-row{color:#ffffff8c;cursor:pointer;align-items:center;gap:12px;font-size:.83rem;transition:color .2s;display:flex}.fc-check-row:hover{color:#fffc}.fc-check-row input[type=checkbox]{accent-color:#fff;cursor:pointer;flex-shrink:0;width:16px;height:16px}.fc-check-row strong{color:#ffffffbf}.fc-dark-warn{color:#ffdc50d9;text-align:center;background:#ffc80012;border:1px solid #ffc80033;border-radius:10px;width:100%;max-width:360px;padding:10px 16px;font-size:.8rem;overflow:hidden}.fc-cam-ring{background:#111;border:2px solid #ffffff1f;border-radius:50%;flex-shrink:0;width:min(44vh,340px);height:min(44vh,340px);position:relative;overflow:hidden;box-shadow:0 0 0 6px #ffffff0a}.fc-video{object-fit:cover;width:100%;height:100%;transition:opacity .4s;transform:scaleX(-1)}.fc-flash{pointer-events:none;background:#fff;border-radius:50%;position:absolute;inset:0}.fc-cam-msg{color:#fff6;text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:16px;font-size:.83rem;display:flex;position:absolute;inset:0}.fc-spinner{border:2.5px solid #ffffff1a;border-top-color:#ffffffb3;border-radius:50%;width:28px;height:28px;animation:.75s linear infinite fc-spin}@keyframes fc-spin{to{transform:rotate(360deg)}}.fc-bar-track{background:#ffffff14;border-radius:9999px;width:100%;height:3px;overflow:hidden}.fc-bar-fill{background:#fff;border-radius:9999px;height:100%}.fc-pulse-ring{border:2px solid #fff3;border-radius:50%;width:64px;height:64px;margin-bottom:8px;animation:1.6s ease-in-out infinite fc-pulse}@keyframes fc-pulse{0%,to{opacity:1;box-shadow:0 0 #ffffff26}50%{opacity:.6;box-shadow:0 0 0 16px #fff0}}.fc-status-ring{border-radius:50%;justify-content:center;align-items:center;width:64px;height:64px;margin-bottom:8px;display:flex}.fc-status-ok{color:#fff;background:#ffffff0f;border:1.5px solid #fff3}.fc-status-err{color:#ff7878e6;background:#ff50500f;border:1.5px solid #ff505040}
