:root{color-scheme:dark}*{box-sizing:border-box}body{margin:0;min-height:100vh;font-family:Inter,Segoe UI,Roboto,Arial,sans-serif;background:radial-gradient(circle at top left,rgba(87,120,255,.22),transparent 32%),radial-gradient(circle at top right,rgba(32,197,170,.18),transparent 28%),linear-gradient(180deg,#0a1020,#0d1426 40%,#10192d);color:#eef3ff}body.light-theme{background:radial-gradient(circle at top left,rgba(120,150,255,.2),transparent 36%),radial-gradient(circle at top right,rgba(38,188,167,.16),transparent 32%),linear-gradient(180deg,#eff4ff,#ecf2ff 40%,#e9f0ff);color:#13213f}.app-shell{max-width:1280px;margin:0 auto;padding:28px 24px 36px}.panel{background:linear-gradient(180deg,#18223ab8,#0e1424e0);border:1px solid rgba(255,255,255,.09);border-radius:20px;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);box-shadow:0 24px 60px #00000047}.hero{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:22px;margin-bottom:18px}.hero-copy h1,.login-hero h1{margin:0;letter-spacing:-.04em}.eyebrow{margin:0 0 8px;text-transform:uppercase;letter-spacing:.12em;color:#8ca2df;font-size:.72rem;font-weight:700}.hero-right{display:grid;gap:10px;min-width:360px}.top-controls{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}.language-control{display:flex;align-items:center;gap:8px;margin:0;color:#c6d1ec;font-size:.85rem}.theme-switch{display:inline-flex;align-items:center;gap:8px;color:#c6d1ec;font-size:.85rem}.theme-switch input{position:absolute;opacity:0;width:1px;height:1px;pointer-events:none}.theme-switch-track{width:44px;height:24px;border-radius:999px;background:#fff3;border:1px solid rgba(255,255,255,.28);display:inline-flex;align-items:center;padding:2px;transition:background .16s ease,border-color .16s ease}.theme-switch-thumb{width:18px;height:18px;border-radius:50%;background:#fff;box-shadow:0 2px 8px #00000040;transition:transform .16s ease}.theme-switch input:checked+.theme-switch-track{background:#5f85ff80;border-color:#91abffbf}.theme-switch input:checked+.theme-switch-track .theme-switch-thumb{transform:translate(20px)}.theme-switch small{color:#9db0d7;font-size:.78rem}body.light-theme .panel{background:linear-gradient(180deg,#ffffffe0,#f4f8fff0);border:1px solid rgba(65,95,170,.14);box-shadow:0 18px 40px #23418224}body.light-theme .theme-switch{color:#3a4f7d}body.light-theme .theme-switch-track{background:#4262a533;border-color:#4262a55c}body.light-theme .theme-switch small,body.light-theme .eyebrow,body.light-theme .hero p,body.light-theme .session-meta span,body.light-theme .notes-head p,body.light-theme .helper-text,body.light-theme .empty{color:#4a5e8f}body.light-theme .btn-muted{background:#12204414;color:#273a66}body.light-theme input,body.light-theme textarea,body.light-theme select{background:#fffffffa;color:#13213f;border:1px solid rgba(62,88,153,.2)}body.light-theme .note-card{background:linear-gradient(180deg,#fffffff5,#f5f9fffa);border:1px solid rgba(67,98,174,.18)}body.light-theme .chip{background:#3854981a;color:#304672}body.light-theme .chip-btn{border:1px solid rgba(70,98,165,.28);color:#31486f}body.light-theme .empty-state{border:1px dashed rgba(78,106,176,.35);background:#f5f9fff2}.language-control select{min-width:140px;padding:8px 10px}.session-box{display:flex;align-items:center;gap:12px;background:#080c1661;border-radius:16px;padding:10px 12px;font-size:.9rem;border:1px solid rgba(255,255,255,.06);justify-content:space-between}.session-meta{display:grid;line-height:1.2;flex:1}.session-meta strong{font-size:.95rem}.session-meta span{color:#97a8d0;font-size:.8rem}.user-avatar{width:42px;height:42px;border-radius:50%;object-fit:cover;border:2px solid rgba(255,255,255,.18);box-shadow:0 8px 20px #00000040;flex:0 0 auto}.user-avatar-fallback{display:grid;place-items:center;background:linear-gradient(135deg,#4f87ff,#6d5cff);color:#fff;font-weight:700}.hero h1{font-size:clamp(1.9rem,3vw,2.35rem)}.app-title{display:inline-flex;align-items:center;gap:10px}.app-title-icon{width:34px;height:34px;border-radius:10px;flex:0 0 auto;box-shadow:0 10px 24px #121a3247}.hero p{margin:8px 0 0;color:#c5d0ea;max-width:62ch}.stats{display:flex;gap:14px}.stats div{display:grid;background:#080c1661;border-radius:16px;padding:12px 14px;min-width:96px;border:1px solid rgba(255,255,255,.06)}.stats strong{font-size:1.3rem}.stats span{color:#a8b5d4;font-size:.85rem}.layout-grid{display:grid;grid-template-columns:360px 1fr;gap:16px}.left-column,.right-column{display:grid;gap:16px}.panel-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.panel h2{margin:0;font-size:1.1rem}.note-form,.right-column,.left-column>.panel{padding:16px}.login-panel{width:min(760px,100%);padding:24px}.login-shell{min-height:100vh;display:grid;place-items:center;padding:20px}.login-topbar{display:flex;justify-content:flex-end;margin-bottom:12px}.login-hero{display:flex;gap:16px;align-items:flex-start;margin-bottom:16px}.brand-badge{width:54px;height:54px;border-radius:18px;display:grid;place-items:center;background:linear-gradient(135deg,#4f87ff,#6d5cff 60%,#22c9a7);color:#fff;font-weight:800;letter-spacing:.04em;box-shadow:0 14px 30px #4f87ff4d;flex:0 0 auto}.brand-icon{width:100%;height:100%;border-radius:inherit;display:block}.login-copy{margin-top:10px;color:#c7d2ec}.feature-row{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}.feature-row span{border-radius:999px;padding:6px 10px;background:#ffffff0f;color:#ced8f1;font-size:.8rem}.login-form{display:grid;gap:0;padding:16px;border-radius:18px;background:#080c1647;border:1px solid rgba(255,255,255,.07)}label{margin-top:10px;margin-bottom:6px;color:#c5cfea;font-size:.9rem}input,textarea,select{width:100%;border:1px solid rgba(255,255,255,.16);background:#0c111dd9;color:#f6f8ff;padding:10px 12px;border-radius:10px;font:inherit}input:focus,textarea:focus,select:focus{outline:2px solid rgba(122,162,255,.7);border-color:transparent}.form-actions,.card-actions,.toolbar,.inline-form,.view-switch{display:flex;gap:8px}.form-actions,.card-actions,.login-form .btn,.google-login-wrap{margin-top:12px}.login-divider{display:grid;place-items:center;margin:18px 0 6px;position:relative}.login-divider:before{content:"";position:absolute;inset:50% 0 auto;height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.12),transparent)}.login-divider span{position:relative;z-index:1;padding:0 12px;background:#0f1524f2;color:#96a6d1;font-size:.82rem}.google-login-wrap{display:grid;justify-items:center;gap:10px}.google-login-label{color:#c6d1ec;font-size:.9rem}.google-login-button{min-height:44px;width:min(360px,100%)}.google-login-hint{color:#94a3c7}.helper-text{margin:4px 0 10px;color:#94a3c7;font-size:.82rem}.selection-chips{display:flex;flex-wrap:wrap;gap:7px}.selected-categories{margin:10px 0 0;color:#b8c6e6;font-size:.84rem}.selected-categories strong{color:#d6e0f8}.toolbar{justify-content:space-between;align-items:center;margin-bottom:14px;gap:10px}.notes-head{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:12px}.notes-head h2{margin:0;font-size:1.1rem}.notes-head p{margin:0;color:#9db0d7;font-size:.85rem}.filter-wrap{display:grid;gap:6px;min-width:220px}.filter-wrap span{color:#9db0d7;font-size:.8rem}.toolbar select{min-width:220px}.btn{border:0;border-radius:10px;padding:9px 12px;font-weight:600;cursor:pointer;transition:transform .14s ease,opacity .14s ease,box-shadow .14s ease}.btn:hover{transform:translateY(-1px)}.btn:disabled{opacity:.55;cursor:not-allowed;transform:none}.btn-primary{background:linear-gradient(135deg,#4f87ff,#6d5cff);color:#fff;box-shadow:0 10px 20px #5a76ff40}.btn-muted{background:#ffffff14;color:#d7def3}.btn-danger{background:#ff454529;color:#ffc9c9}.alert{margin-bottom:14px;background:#ff5f5f24;border:1px solid rgba(255,120,120,.45);color:#ffd0d0;padding:10px 12px;border-radius:10px}.toast-success{margin-bottom:14px;background:#45d17829;border:1px solid rgba(130,238,170,.42);color:#c6ffd9;padding:10px 12px;border-radius:10px}.notes-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px}.note-card{background:linear-gradient(180deg,#0e1422eb,#0b101cf5);border:1px solid rgba(255,255,255,.08);border-radius:18px;padding:16px;box-shadow:0 14px 30px #0000002e;transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}.note-card:hover{transform:translateY(-2px);border-color:#82a0ff73;box-shadow:0 20px 34px #0000003d}.note-card h3{margin:0;font-size:1.05rem}.note-card p{margin:10px 0;color:#d0d8ec;white-space:pre-wrap}.note-header{display:flex;justify-content:space-between;gap:8px;align-items:center}.badge{border-radius:999px;padding:4px 8px;font-size:.75rem}.badge-active{background:#45d17833;color:#9beeb6}.badge-muted{background:#ffc64338;color:#ffe2a6}.note-categories,.chips{display:flex;flex-wrap:wrap;gap:7px}.chip,.chip-btn{border-radius:999px;padding:5px 10px;font-size:.8rem}.chip{background:#ffffff14;color:#cfd8ef}.chip-btn{border:1px solid rgba(255,255,255,.18);background:transparent;color:#ccd6ef;cursor:pointer}.chip-btn-on{background:#6c84ff59;border-color:#899dffd9}.empty{color:#a9b7d8;margin:8px 0}.empty-state{display:grid;gap:8px;place-items:center;text-align:center;padding:28px 18px;border-radius:14px;border:1px dashed rgba(150,170,220,.35);background:#080c1647}.empty-state strong{color:#dbe6ff}.empty-state p{margin:0;color:#9fb0d6;font-size:.9rem}.login-panel h1{margin-top:0;margin-bottom:8px}.login-panel p{margin-top:0;color:#c9d3ec}.debug-panel{padding:16px}.debug-table{width:100%;border-collapse:collapse;font-size:.9rem}.debug-table th,.debug-table td{text-align:left;padding:8px;border-bottom:1px solid rgba(255,255,255,.1)}.debug-table th{color:#bdcae9;font-weight:600}@media (max-width: 980px){.layout-grid{grid-template-columns:1fr}.hero{flex-direction:column;align-items:flex-start}.hero-right{width:100%;min-width:0}.session-box{width:100%;flex-wrap:wrap}.toolbar{flex-direction:column;align-items:stretch}.notes-head{flex-direction:column;align-items:flex-start;gap:6px}.language-control{width:100%;justify-content:space-between}.top-controls{width:100%;flex-direction:column;justify-content:flex-start}.filter-wrap,.toolbar select{min-width:0}.login-panel{width:100%;padding:18px}.login-hero{flex-direction:column}}
