:root{--bg:#081018;--panel:#111b25;--panel2:#0d161f;--line:#21303e;--ink:#eef4f8;--dim:#9aabb9;--faint:#667987;--accent:#2d91c5;--ok:#4bbb8b;--warn:#d5a13d;--brand:#004570}
*{box-sizing:border-box}html{background:var(--bg)}body{margin:0;color:var(--ink);background:radial-gradient(circle at 50% -10%,#10283a 0,#081018 30%);font:15px/1.55 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;min-height:100vh}
button,input,textarea,select{font:inherit}.topbar{height:68px;padding:0 22px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(255,255,255,.06);position:sticky;top:0;background:rgba(8,16,24,.88);backdrop-filter:blur(18px);z-index:20}
.brand{display:flex;align-items:center;gap:10px}.brand-mark{width:34px;height:34px;border-radius:10px;background:linear-gradient(145deg,#0d638f,#003b60);display:grid;place-items:center;font-weight:800;font-size:12px}.brand strong,.brand span{display:block}.brand strong{font-size:14px}.brand span{font-size:10px;color:var(--faint);letter-spacing:.4px}.icon-btn{background:none;border:0;color:var(--accent)}
main{max-width:980px;margin:0 auto;padding:26px 20px 110px}.view{display:none}.view.active{display:block}.hero{padding:28px 0 16px}.eyebrow{margin:0 0 6px;color:var(--accent);font-size:10px;font-weight:700;letter-spacing:1px;text-transform:uppercase}.hero h1,.page-head h1{font-size:clamp(28px,5vw,42px);line-height:1.08;margin:0 0 20px;letter-spacing:-.035em}.askbox{width:100%;min-height:74px;border-radius:18px;border:1px solid #284156;background:linear-gradient(180deg,#132332,#0f1b26);color:var(--dim);padding:0 20px;display:flex;align-items:center;justify-content:space-between;text-align:left;box-shadow:0 20px 60px rgba(0,0,0,.16);cursor:pointer}.askbox b{color:var(--accent);font-size:20px}.block{margin-top:28px}.section-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.section-head h2{font-size:16px;margin:0}.section-head span,.section-head button{font-size:11px;color:var(--faint);background:none;border:0}.resume-card{width:100%;border:1px solid var(--line);background:var(--panel);color:var(--ink);padding:16px 18px;border-radius:15px;display:flex;align-items:center;justify-content:space-between;text-align:left}.resume-card small,.resume-card strong,.resume-card span{display:block}.resume-card small{color:var(--accent);text-transform:uppercase;font-size:9px;letter-spacing:.8px}.resume-card strong{margin-top:3px}.resume-card span{font-size:12px;color:var(--dim);margin-top:2px}
.feed{display:flex;flex-direction:column;gap:10px}.post{border:1px solid var(--line);background:rgba(17,27,37,.8);border-radius:15px;padding:15px}.post-head{display:flex;justify-content:space-between;gap:12px}.author{display:flex;gap:10px;align-items:center}.avatar{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:#183044;color:#cde9f7;font-weight:700;font-size:12px}.author strong{font-size:13px}.author small{display:block;color:var(--faint);font-size:10px}.verified{color:var(--accent);font-size:10px}.post h3{font-size:15px;margin:12px 0 7px;line-height:1.4}.post p{margin:0;color:var(--dim);font-size:13px}.post-meta{display:flex;gap:14px;color:var(--faint);font-size:11px;margin-top:13px}.compact .post:nth-child(n+3){display:none}
.tools-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.tool{border:1px solid var(--line);background:var(--panel);color:var(--ink);border-radius:14px;padding:14px;text-align:left;min-height:100px;position:relative}.tool small{display:block;color:var(--faint);font-size:9px;text-transform:uppercase;letter-spacing:.7px}.tool strong{display:block;margin:8px 0 3px}.tool p{margin:0;color:var(--dim);font-size:11px;line-height:1.4}.tool.locked{opacity:.68}.lock{position:absolute;right:12px;top:12px;font-size:13px}.live-card{margin-top:28px;border:1px solid rgba(45,145,197,.34);background:linear-gradient(135deg,rgba(45,145,197,.13),rgba(17,27,37,.76));border-radius:17px;padding:18px;display:flex;justify-content:space-between;align-items:center;gap:18px}.live-card small{color:var(--accent);font-size:9px;letter-spacing:.8px}.live-card h3{margin:4px 0 2px}.live-card p{margin:0;color:var(--dim);font-size:12px}
.primary,.secondary{border-radius:10px;padding:9px 13px;cursor:pointer}.primary{border:0;background:var(--accent);color:#05131c;font-weight:700}.secondary{border:1px solid var(--line);background:transparent;color:var(--ink)}.page-head{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin:20px 0}.tabs{display:flex;gap:7px;overflow:auto;padding-bottom:12px}.tabs button{border:1px solid var(--line);background:transparent;color:var(--dim);border-radius:999px;padding:7px 11px;font-size:11px;white-space:nowrap}.tabs button.active{background:rgba(45,145,197,.15);border-color:rgba(45,145,197,.35);color:#d9f2ff}
.chat-shell{border:1px solid var(--line);border-radius:18px;background:rgba(13,22,31,.76);min-height:62vh;display:flex;flex-direction:column}.chat-thread{padding:18px;display:flex;flex-direction:column;gap:14px;flex:1}.jarvis-msg,.user-msg{display:flex;gap:10px;max-width:780px}.jarvis-msg p,.user-msg p{margin:3px 0 0;color:var(--dim)}.user-msg{align-self:flex-end;background:var(--panel);padding:12px 14px;border-radius:14px}.composer{border-top:1px solid var(--line);padding:12px;display:flex;gap:8px}.composer textarea{flex:1;resize:none;background:#0b151e;border:1px solid var(--line);color:var(--ink);border-radius:12px;padding:11px}.composer textarea:focus{outline:none;border-color:var(--accent)}
.searchbox{display:flex;align-items:center;gap:9px;border:1px solid var(--line);background:var(--panel);border-radius:13px;padding:0 13px}.searchbox input{width:100%;background:none;border:0;color:var(--ink);padding:13px 0;outline:none}.topic-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin:18px 0}.topic{padding:14px;border:1px solid var(--line);background:var(--panel);border-radius:12px;color:var(--ink);text-align:left}.topic span{display:block;color:var(--faint);font-size:10px;margin-top:4px}.source-list{display:grid;gap:9px}.source-list article{border-left:2px solid var(--line);padding:8px 0 8px 12px}.source-list small,.source-list strong,.source-list span{display:block}.source-list small{font-size:9px;color:var(--accent);letter-spacing:.7px}.source-list span{font-size:11px;color:var(--faint);margin-top:3px}
.plan-card{display:flex;justify-content:space-between;gap:20px;align-items:center;border:1px solid var(--line);background:var(--panel);border-radius:16px;padding:18px}.plan-card small{color:var(--accent);font-size:9px;letter-spacing:.8px}.plan-card h2{margin:2px 0}.plan-card p{margin:0;color:var(--dim);font-size:12px}.plan-card select{background:#0b151e;color:var(--ink);border:1px solid var(--line);border-radius:10px;padding:9px}.settings-list{margin-top:14px;border:1px solid var(--line);border-radius:15px;overflow:hidden}.settings-list button{width:100%;display:flex;justify-content:space-between;background:var(--panel2);color:var(--ink);border:0;border-bottom:1px solid var(--line);padding:15px}.settings-list button:last-child{border-bottom:0}
.bottom-nav{position:fixed;left:50%;bottom:14px;transform:translateX(-50%);width:min(680px,calc(100% - 24px));background:rgba(12,21,30,.92);backdrop-filter:blur(18px);border:1px solid var(--line);border-radius:18px;padding:7px;display:grid;grid-template-columns:repeat(5,1fr);z-index:30;box-shadow:0 18px 50px rgba(0,0,0,.3)}.bottom-nav button{background:none;border:0;color:var(--faint);font-size:9px;padding:5px 2px}.bottom-nav span{display:block;font-size:17px;margin-bottom:1px}.bottom-nav button.active{color:var(--ink)}.bottom-nav .jarvis-nav span{width:31px;height:31px;border-radius:50%;background:var(--accent);color:#071522;display:grid;place-items:center;margin:-14px auto 3px;font-weight:800;border:4px solid var(--bg)}
.modal-backdrop{position:fixed;inset:0;background:rgba(0,0,0,.68);display:grid;place-items:center;padding:18px;z-index:50}.modal-backdrop[hidden]{display:none}.modal{width:min(430px,100%);background:#101b25;border:1px solid #2a3d4d;border-radius:18px;padding:23px;position:relative}.modal-x{position:absolute;right:15px;top:12px;border:0;background:none;color:var(--faint);font-size:22px}.modal small{color:var(--accent);letter-spacing:.8px}.modal h2{margin:6px 0}.modal p{color:var(--dim)}.full{width:100%}
@media(max-width:640px){main{padding:15px 14px 104px}.topbar{padding:0 15px}.hero{padding-top:22px}.tools-grid{grid-template-columns:1fr 1fr}.topic-grid{grid-template-columns:1fr 1fr}.page-head{align-items:flex-start;flex-direction:column}.page-head h1{margin-bottom:0}.live-card{align-items:flex-start;flex-direction:column}.plan-card{align-items:flex-start;flex-direction:column}.bottom-nav{bottom:8px}.brand span{display:none}}

.post-category{font-size:9px;text-transform:uppercase;letter-spacing:.65px;color:var(--accent);border:1px solid rgba(45,145,197,.28);border-radius:999px;padding:3px 7px;height:max-content}
.form-modal{display:flex;flex-direction:column;gap:12px}
.form-modal label{display:flex;flex-direction:column;gap:6px;font-size:12px;color:var(--dim)}
.form-modal input,.form-modal select,.form-modal textarea{width:100%;background:#0b151e;color:var(--ink);border:1px solid var(--line);border-radius:10px;padding:10px 11px}
.form-modal input:focus,.form-modal select:focus,.form-modal textarea:focus{outline:none;border-color:var(--accent)}
.form-modal .check-row{flex-direction:row;align-items:center;color:var(--ink)}
.form-modal .check-row input{width:auto}
.form-modal .check-row span{font-size:11px;color:var(--faint)}
.privacy-note{font-size:11px;line-height:1.45;color:var(--warn);border:1px solid rgba(213,161,61,.28);background:rgba(213,161,61,.06);padding:10px;border-radius:10px}
.modal-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:4px}
.thread-modal{max-height:86vh;overflow:auto}
.thread-kicker{color:var(--accent);letter-spacing:.7px}
.thread-author{font-size:11px;color:var(--faint);margin-top:-4px}
.thread-copy{color:var(--dim)}
.expert-request{margin:12px 0;padding:9px 10px;border-radius:10px;background:rgba(45,145,197,.08);border:1px solid rgba(45,145,197,.25);font-size:12px;color:#c9eaff}
.thread-comments{margin-top:18px;border-top:1px solid var(--line);padding-top:14px}
.comment{padding:10px 0;border-bottom:1px solid var(--line)}
.comment small{display:block;color:var(--faint);font-size:10px}
.comment p{margin:5px 0 0;color:var(--dim)}
.comment-form{display:flex;gap:8px;margin-top:14px}
.comment-form textarea{flex:1;background:#0b151e;color:var(--ink);border:1px solid var(--line);border-radius:10px;padding:10px}
.toast{position:fixed;left:50%;bottom:92px;transform:translateX(-50%);z-index:80;background:#152532;color:var(--ink);border:1px solid #294255;border-radius:999px;padding:8px 13px;font-size:11px;box-shadow:0 12px 35px rgba(0,0,0,.32)}

.live-hero{border:1px solid rgba(45,145,197,.34);background:linear-gradient(135deg,rgba(45,145,197,.16),rgba(17,27,37,.8));border-radius:18px;padding:22px}
.live-hero small{color:var(--accent);font-size:9px;letter-spacing:.8px}.live-hero h2{font-size:28px;margin:5px 0 6px}.live-hero p{color:var(--dim);max-width:680px}.live-meta{display:flex;gap:8px;flex-wrap:wrap;margin:14px 0}.live-meta span{font-size:11px;color:var(--dim);border:1px solid var(--line);border-radius:999px;padding:5px 8px}
.specialist-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:9px}.specialist-grid article{border:1px solid var(--line);background:var(--panel);border-radius:14px;padding:14px}.specialist-grid strong,.specialist-grid span{display:block}.specialist-grid strong{margin-top:9px}.specialist-grid span{font-size:11px;color:var(--faint)}
.marketing-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}
.addon-card{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-top:12px;border:1px solid var(--line);background:var(--panel);border-radius:16px;padding:16px}.addon-card small,.addon-card strong,.addon-card span{display:block}.addon-card small{color:var(--accent);font-size:9px;letter-spacing:.8px}.addon-card span{font-size:11px;color:var(--dim);margin-top:2px}
.switch{position:relative;width:46px;height:26px;display:block}.switch input{opacity:0;width:0;height:0}.switch span{position:absolute;inset:0;background:#25323d;border-radius:999px;cursor:pointer;transition:.2s}.switch span:after{content:"";position:absolute;width:20px;height:20px;left:3px;top:3px;border-radius:50%;background:#d5dee5;transition:.2s}.switch input:checked+span{background:var(--accent)}.switch input:checked+span:after{transform:translateX(20px);background:#071522}
.clickable{cursor:pointer}.clickable:hover{border-color:#324a5d}
@media(max-width:640px){.specialist-grid,.marketing-grid{grid-template-columns:1fr 1fr}.live-hero h2{font-size:24px}}

.editorial-card{margin-top:12px;border:1px solid var(--line);background:linear-gradient(180deg,rgba(17,27,37,.95),rgba(13,22,31,.95));border-radius:16px;padding:16px}
.editorial-card .section-head{margin-bottom:6px}.editorial-card small{color:var(--accent);font-size:9px;letter-spacing:.8px}.editorial-card h2{margin:1px 0 0;font-size:16px}
.editorial-row{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:13px 0;border-top:1px solid var(--line)}.editorial-row strong,.editorial-row span{display:block}.editorial-row strong{font-size:12px}.editorial-row span{font-size:10.5px;color:var(--faint);margin-top:2px}

/* AOS OGGI -------------------------------------------------------------- */
.brand-button{background:none;border:0;color:inherit;padding:0;cursor:pointer;text-align:left}
.today-head{display:flex;justify-content:space-between;align-items:flex-end;gap:22px;margin:18px 0 20px}
.today-head h1{font-size:clamp(30px,5vw,44px);line-height:1.05;margin:0;letter-spacing:-.035em}
.today-date{margin:7px 0 0;color:var(--dim);text-transform:capitalize}
.calendar-status{display:flex;align-items:center;gap:10px;border:1px solid var(--line);background:var(--panel);padding:10px 12px;border-radius:14px;min-width:270px}
.calendar-status .status-dot{width:8px;height:8px;border-radius:50%;background:var(--warn);flex:none}
.calendar-status strong,.calendar-status small{display:block}.calendar-status strong{font-size:12px}.calendar-status small{font-size:10px;color:var(--faint)}
.calendar-status button{margin-left:auto}
.today-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin:18px 0 26px}
.today-stats article{border:1px solid var(--line);background:var(--panel);border-radius:14px;padding:14px}
.today-stats strong{display:block;font-size:24px;line-height:1}.today-stats span{display:block;color:var(--faint);font-size:10px;text-transform:uppercase;letter-spacing:.55px;margin-top:5px}
.today-section{margin-top:24px}
.agenda-list,.followup-list{display:flex;flex-direction:column;gap:8px}
.agenda-item{width:100%;display:grid;grid-template-columns:64px minmax(0,1fr) 26px;gap:12px;align-items:center;text-align:left;border:1px solid var(--line);background:var(--panel);color:var(--ink);padding:13px 14px;border-radius:14px;cursor:pointer}
.agenda-item:hover{border-color:#38536a}.agenda-item.done{opacity:.72}
.agenda-time{font-weight:750;color:#d8eef8;font-size:14px}
.agenda-main strong,.agenda-main span,.agenda-main small{display:block}.agenda-main strong{font-size:13px}.agenda-main span{font-size:11.5px;color:var(--dim);margin-top:1px}.agenda-main small{font-size:10px;color:var(--accent);margin-top:5px}
.agenda-state{font-size:17px;color:var(--accent);text-align:right}
.followup-item{display:flex;align-items:center;gap:11px;border:1px solid var(--line);background:var(--panel2);padding:12px 14px;border-radius:13px}
.followup-item strong,.followup-item span{display:block}.followup-item strong{font-size:12px}.followup-item span{font-size:11px;color:var(--dim);margin-top:2px}
.followup-check{width:30px;height:30px;border-radius:50%;border:1px solid #365064;background:transparent;color:var(--accent);cursor:pointer;flex:none}
.today-empty{padding:15px;border:1px dashed var(--line);border-radius:12px;color:var(--faint);font-size:12px;text-align:center}
.daily-brief{margin-top:28px;display:flex;align-items:center;justify-content:space-between;gap:18px;border:1px solid rgba(45,145,197,.36);background:linear-gradient(135deg,rgba(45,145,197,.14),rgba(17,27,37,.82));border-radius:17px;padding:18px}
.daily-brief small{font-size:9px;color:var(--accent);letter-spacing:.8px}.daily-brief h3{margin:4px 0 3px}.daily-brief p{margin:0;color:var(--dim);font-size:11.5px;max-width:620px}
.demo-warning{margin-top:18px;color:var(--warn);font-size:10.5px;border-left:2px solid var(--warn);padding-left:10px}
.appointment-modal{width:min(560px,100%)}
.patient-summary{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:14px 0}
.patient-summary>div{border:1px solid var(--line);background:#0b151e;border-radius:12px;padding:11px}.patient-summary span,.patient-summary strong{display:block}.patient-summary span{font-size:9px;color:var(--faint);text-transform:uppercase;letter-spacing:.5px}.patient-summary strong{font-size:12px;margin-top:4px;line-height:1.45}
.clinical-lock-note{font-size:11px;color:var(--warn);border:1px solid rgba(213,161,61,.28);background:rgba(213,161,61,.06);border-radius:10px;padding:10px;margin-bottom:12px}.clinical-lock-note.unlocked{color:var(--ok);border-color:rgba(75,187,139,.28);background:rgba(75,187,139,.06)}
.note-label{display:flex;flex-direction:column;gap:6px;color:var(--dim);font-size:11px;margin-top:10px}
.note-label textarea,.note-label select{width:100%;background:#0b151e;color:var(--ink);border:1px solid var(--line);border-radius:10px;padding:10px}.note-label textarea:focus,.note-label select:focus{outline:none;border-color:var(--accent)}
.voice-row{display:flex;align-items:center;gap:10px;margin-top:8px}.voice-row span{font-size:10px;color:var(--faint)}
.primary:disabled,.secondary:disabled,textarea:disabled,select:disabled{opacity:.45;cursor:not-allowed}
@media(max-width:640px){.today-head{align-items:flex-start;flex-direction:column}.calendar-status{width:100%;min-width:0}.today-stats{grid-template-columns:repeat(3,1fr)}.patient-summary{grid-template-columns:1fr}.daily-brief{align-items:flex-start;flex-direction:column}.agenda-item{grid-template-columns:52px minmax(0,1fr) 20px}}

/* COCKPIT V0.2 — visual reset for AOS Oggi ----------------------------- */
#today{max-width:1080px;margin:0 auto}
.cockpit-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;padding:20px 2px 18px}
.cockpit-head h1{margin:0;font-size:clamp(34px,5vw,52px);line-height:1;letter-spacing:-.045em;font-weight:700}
.cockpit-head .today-date{margin:9px 0 0;color:#8295a4;font-size:13px}
.sync-pill{display:flex;align-items:center;gap:9px;background:transparent;border:1px solid #22313d;color:var(--ink);border-radius:999px;padding:7px 11px;cursor:pointer}
.sync-pill>span:nth-child(2){text-align:left}.sync-pill strong,.sync-pill small{display:block;line-height:1.2}.sync-pill strong{font-size:10.5px;font-weight:650}.sync-pill small{font-size:9px;color:#708493;margin-top:2px}
.capture-bar{height:64px;border:1px solid #2b4253;background:#0e1922;border-radius:18px;padding:7px 8px;display:grid;grid-template-columns:44px 1fr 42px 42px;gap:5px;align-items:center;box-shadow:0 18px 50px rgba(0,0,0,.15)}
.capture-bar input{height:100%;background:transparent;border:0;outline:0;color:#f3f7fa;font-size:15px;padding:0 8px}
.capture-bar input::placeholder{color:#70818e}
.capture-plus,.capture-mic,.capture-send{height:42px;border:0;border-radius:12px;cursor:pointer}
.capture-plus,.capture-mic{background:#14232e;color:#9eb1bf;font-size:18px}.capture-send{background:#e8f2f7;color:#09141b;font-size:20px;font-weight:700}
.capture-hint{font-size:10px;color:#607481;padding:7px 9px 0}
.cockpit-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(300px,.75fr);gap:24px;margin-top:28px;align-items:start}
.cockpit-side{display:flex;flex-direction:column;gap:24px}
.cockpit-panel{background:transparent;border:0;padding:0}
.cockpit-title{display:flex;justify-content:space-between;align-items:flex-end;gap:12px;padding:0 2px 9px;border-bottom:1px solid #1d2b36}
.cockpit-title small{display:block;color:#55778b;font-size:8.5px;letter-spacing:1.05px;font-weight:750}.cockpit-title h2{font-size:18px;line-height:1.1;margin:3px 0 0;font-weight:650}.cockpit-title>span{font-size:10px;color:#607481}
.tiny-action{border:0;background:none;color:#73a9c4;font-size:10px;cursor:pointer;padding:4px}
.agenda-list{gap:0}.agenda-item{border:0;border-bottom:1px solid #172630;background:transparent;border-radius:0;padding:13px 3px;grid-template-columns:58px minmax(0,1fr) 20px;transition:.15s}.agenda-item:hover{background:#0d1820;border-color:#223542;padding-left:8px;padding-right:8px}.agenda-time{font-size:13px;color:#9cc4d7}.agenda-main strong{font-size:13px;font-weight:620}.agenda-main span{font-size:11px;color:#718592}.agenda-main small{font-size:9.5px;color:#527b91}.agenda-state{font-size:14px;color:#527b91}
.gap-card{width:100%;display:flex;align-items:center;justify-content:space-between;text-align:left;border:1px dashed #315368;background:rgba(23,66,90,.10);border-radius:12px;padding:12px 14px;margin-top:12px;color:var(--ink);cursor:pointer}.gap-card small,.gap-card strong,.gap-card span{display:block}.gap-card small{color:#75aeca;font-size:8px;letter-spacing:.9px}.gap-card strong{font-size:13px;margin:2px 0}.gap-card span{font-size:10px;color:#708591}.gap-card b{font-size:10px;color:#8ec4dd}
.action-list,.task-list{display:flex;flex-direction:column}.action-row{width:100%;display:grid;grid-template-columns:28px 1fr 14px;gap:9px;align-items:center;text-align:left;background:transparent;border:0;border-bottom:1px solid #172630;color:var(--ink);padding:11px 2px;cursor:pointer}.action-row:hover{background:#0d1820}.action-row div strong,.action-row div small{display:block}.action-row div strong{font-size:11.5px;font-weight:620}.action-row div small{font-size:9.5px;color:#728591;margin-top:2px}.action-row>b{font-size:11px;color:#527b91}.action-kind{width:24px;height:24px;border-radius:8px;display:grid;place-items:center;background:#17252f;color:#86aabd;font-size:11px;font-weight:700}.action-kind.cancel{color:#dca75f}.action-kind.call{color:#89b5c9}.action-kind.booking{color:#6db896}
.task-row{display:grid;grid-template-columns:28px 1fr;align-items:start;gap:8px;border-bottom:1px solid #172630;padding:10px 2px}.task-row button{width:24px;height:24px;border-radius:50%;border:1px solid #314754;background:transparent;color:#7daac0;cursor:pointer}.task-row span{font-size:11.5px;color:#c9d5dc;padding-top:3px}
.followup-panel{margin-top:28px}.horizontal-followups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:10px}.horizontal-followups .followup-item{background:#0d1820;border:1px solid #1c2d39}
.attention-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:28px}.attention-item{display:grid;grid-template-columns:34px 1fr 12px;gap:9px;align-items:center;text-align:left;background:#0d1820;border:1px solid #1b2b36;color:var(--ink);border-radius:13px;padding:11px;cursor:pointer}.attention-item:hover{border-color:#315064}.attention-icon{width:30px;height:30px;border-radius:9px;background:#142a38;display:grid;place-items:center;color:#8bc0d9;font-size:12px;font-weight:750}.attention-item small,.attention-item strong,.attention-item em{display:block}.attention-item small{font-size:8px;color:#55788d;letter-spacing:.8px}.attention-item strong{font-size:11.5px;margin-top:1px}.attention-item em{font-size:9.5px;font-style:normal;color:#6e8290;margin-top:2px}.attention-item>b{color:#587f94;font-size:11px}
.day-close{margin-top:20px;padding:14px 2px 2px;border-top:1px solid #1d2b36;display:flex;justify-content:space-between;gap:18px;align-items:center}.day-close small,.day-close strong{display:block}.day-close small{font-size:8px;letter-spacing:.9px;color:#55778b}.day-close strong{font-size:11px;font-weight:520;color:#8fa1ad;margin-top:2px}
.candidate-list{display:flex;flex-direction:column;gap:7px;margin-top:14px}.candidate-list button{display:flex;align-items:center;justify-content:space-between;text-align:left;background:#0c1720;border:1px solid var(--line);color:var(--ink);border-radius:11px;padding:11px;cursor:pointer}.candidate-list strong,.candidate-list span{display:block}.candidate-list strong{font-size:12px}.candidate-list span{font-size:10px;color:var(--faint);margin-top:2px}.candidate-list b{font-size:10px;color:var(--accent)}
.day-summary{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin:14px 0}.day-summary>div{background:#0c1720;border:1px solid var(--line);border-radius:11px;padding:12px}.day-summary strong,.day-summary span{display:block}.day-summary strong{font-size:22px}.day-summary span{font-size:9px;color:var(--faint);margin-top:3px}
.demo-warning{opacity:.65;margin-top:14px}
@media(max-width:780px){.cockpit-grid{grid-template-columns:1fr}.cockpit-side{gap:20px}.attention-strip{grid-template-columns:1fr}.horizontal-followups{grid-template-columns:1fr}}
@media(max-width:560px){.cockpit-head{align-items:flex-start;flex-direction:column}.sync-pill{align-self:flex-start}.capture-bar{grid-template-columns:40px 1fr 38px 38px;height:58px}.cockpit-grid{margin-top:22px;gap:20px}.agenda-item{grid-template-columns:50px minmax(0,1fr) 18px}.day-close{align-items:flex-start;flex-direction:column}.day-summary{grid-template-columns:1fr 1fr}}

/* PREMIUM POLISH + DAILY STUDY ------------------------------------------ */
body{background:
  radial-gradient(circle at 12% -8%,rgba(28,96,132,.22),transparent 28%),
  radial-gradient(circle at 88% 8%,rgba(31,67,102,.18),transparent 30%),
  linear-gradient(180deg,#07111a 0,#081018 48%,#071018 100%);
}
.topbar{background:rgba(7,15,23,.76);border-bottom:1px solid rgba(155,195,217,.07);box-shadow:0 8px 30px rgba(0,0,0,.11)}
.brand-mark{background:linear-gradient(145deg,#187bab,#054a72);box-shadow:0 0 0 1px rgba(165,220,245,.08),0 8px 24px rgba(0,72,110,.25)}
.icon-btn{width:30px;height:30px;border-radius:50%;background:rgba(45,145,197,.08);display:grid;place-items:center}
.capture-bar{background:linear-gradient(180deg,rgba(18,34,46,.96),rgba(12,24,33,.96));border-color:#29485c;box-shadow:0 20px 60px rgba(0,0,0,.24),inset 0 1px 0 rgba(255,255,255,.025)}
.cockpit-title{border-bottom-color:rgba(126,168,192,.13)}
.agenda-item,.action-row,.task-row{border-bottom-color:rgba(123,160,181,.09)}
.gap-card{background:linear-gradient(135deg,rgba(28,94,128,.12),rgba(10,25,35,.25));border-color:#315d74}
.attention-item{background:linear-gradient(180deg,rgba(15,29,39,.93),rgba(11,23,31,.93));border-color:rgba(109,155,181,.13);box-shadow:0 12px 28px rgba(0,0,0,.09)}
.study-feature{position:relative;overflow:hidden;margin-top:30px;border:1px solid rgba(103,177,214,.28);background:
  linear-gradient(135deg,rgba(24,69,94,.96),rgba(11,27,39,.96) 58%,rgba(8,20,29,.98));
  border-radius:22px;padding:20px 22px 21px;box-shadow:0 26px 70px rgba(0,0,0,.25),inset 0 1px 0 rgba(255,255,255,.035)}
.study-glow{position:absolute;width:300px;height:300px;border-radius:50%;right:-95px;top:-140px;background:radial-gradient(circle,rgba(62,167,216,.28),rgba(62,167,216,0) 68%);pointer-events:none}
.study-topline,.study-content,.study-actions{position:relative;z-index:1}
.study-topline{display:flex;align-items:center;justify-content:space-between;gap:16px}
.study-badge{font-size:9px;letter-spacing:1.2px;font-weight:800;color:#a9d8ed;display:flex;align-items:center;gap:7px}.study-badge span{width:7px;height:7px;border-radius:50%;background:#79d2f5;box-shadow:0 0 0 5px rgba(121,210,245,.08)}
.study-streak{display:flex;align-items:baseline;gap:5px;color:#a9bcc7}.study-streak strong{font-size:20px;color:#f3f8fa}.study-streak span{font-size:9px;text-transform:uppercase;letter-spacing:.55px}
.study-content{display:grid;grid-template-columns:minmax(0,1fr) 112px;gap:24px;align-items:center;margin-top:22px}
.study-copy>small{font-size:8.5px;letter-spacing:.9px;color:#7eb7d2}.study-copy h2{font-size:clamp(24px,3.3vw,36px);line-height:1.04;letter-spacing:-.035em;margin:6px 0 9px;max-width:720px}.study-copy p{max-width:680px;margin:0;color:#a9bbc5;font-size:12px}
.study-meta{display:flex;gap:7px;flex-wrap:wrap;margin-top:14px}.study-meta span{border:1px solid rgba(132,188,216,.18);background:rgba(255,255,255,.025);border-radius:999px;padding:5px 8px;font-size:9px;color:#89a8b8}
.study-progress-wrap{display:flex;flex-direction:column;align-items:center;gap:6px}.study-progress-wrap>small{font-size:8px;letter-spacing:1px;color:#64879a}
.study-ring{--study-pct:0deg;width:86px;height:86px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(#7ed8ff var(--study-pct),rgba(255,255,255,.06) 0);position:relative;box-shadow:0 0 35px rgba(52,160,211,.09)}.study-ring:after{content:"";position:absolute;inset:6px;background:#0d2330;border-radius:50%}.study-ring span{position:relative;z-index:2;font-size:15px;font-weight:750}
.study-actions{display:flex;align-items:center;gap:8px;margin-top:20px}.study-primary,.study-secondary{border-radius:11px;padding:10px 13px;cursor:pointer}.study-primary{border:0;background:#edf7fb;color:#07141c;font-weight:750}.study-primary b{margin-left:12px}.study-secondary{border:1px solid rgba(170,210,230,.16);background:rgba(255,255,255,.025);color:#b5c7d0}
.study-feature.completed{border-color:rgba(94,192,150,.27)}.study-feature.completed .study-badge span{background:#6fd1a3;box-shadow:0 0 0 5px rgba(111,209,163,.08)}.study-feature.completed .study-ring{background:conic-gradient(#6fd1a3 360deg,rgba(255,255,255,.06) 0)}
.study-page-head{max-width:820px;margin:18px auto 22px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:18px}.back-link{justify-self:start;border:0;background:none;color:#8da5b3;cursor:pointer}.study-page-kicker{font-size:9px;letter-spacing:1.2px;color:#7bbbd8;font-weight:750}.study-page-progress{justify-self:end;display:flex;align-items:center;gap:8px;font-size:9px;color:#7891a0}.study-page-progress>div{width:90px;height:3px;background:#1d303c;border-radius:999px;overflow:hidden}.study-page-progress i{display:block;height:100%;background:#72c6e9;width:33%;transition:.25s}
.lesson-shell{max-width:820px;margin:0 auto;background:linear-gradient(180deg,rgba(14,28,38,.9),rgba(9,20,28,.9));border:1px solid rgba(109,157,182,.15);border-radius:24px;overflow:hidden;box-shadow:0 28px 90px rgba(0,0,0,.25)}
.lesson-header{padding:34px 38px 30px;border-bottom:1px solid rgba(120,160,183,.10);background:radial-gradient(circle at 100% 0,rgba(48,130,169,.15),transparent 38%)}.lesson-labels{display:flex;gap:6px}.lesson-labels span{font-size:8px;letter-spacing:.85px;padding:5px 7px;border-radius:999px;border:1px solid rgba(103,167,199,.2);color:#86b7ce}.lesson-header h1{font-size:clamp(32px,5vw,54px);line-height:.98;letter-spacing:-.05em;margin:13px 0 14px}.lesson-header p{max-width:680px;color:#9badb7;font-size:13px;margin:0}
.lesson-block{display:none;padding:34px 38px}.lesson-block.active{display:block}.lesson-block>small{font-size:8.5px;color:#70abc5;letter-spacing:1px}.lesson-block h2{font-size:27px;line-height:1.08;margin:8px 0 12px;letter-spacing:-.025em}.lesson-block p{font-size:14px;line-height:1.7;color:#b5c2c9}.lesson-block blockquote{margin:24px 0 0;border-left:2px solid #70c8ee;padding:11px 15px;color:#d7e5eb;background:rgba(70,145,181,.06);font-size:14px}
.lesson-points{display:grid;gap:8px;margin-top:20px}.lesson-points article{display:grid;grid-template-columns:34px 1fr;gap:12px;align-items:center;border:1px solid rgba(113,155,178,.12);border-radius:12px;padding:12px;background:rgba(255,255,255,.012)}.lesson-points b{width:30px;height:30px;border-radius:9px;background:#153143;display:grid;place-items:center;color:#8dd1ed}.lesson-points strong,.lesson-points span{display:block}.lesson-points span{font-size:11px;color:#8096a3;margin-top:2px}
.source-chip{margin-top:16px;border:1px solid rgba(115,177,207,.2);background:rgba(55,124,158,.08);color:#98c9de;border-radius:999px;padding:7px 10px;font-size:10px;cursor:pointer}
#study-reflection{width:100%;margin-top:14px;background:#0a1720;border:1px solid #213845;border-radius:12px;color:var(--ink);padding:12px;resize:vertical}#study-reflection:focus{outline:none;border-color:#4a8da9}
.community-prompt{width:100%;margin-top:12px;display:grid;grid-template-columns:34px 1fr 12px;gap:10px;align-items:center;text-align:left;background:#0c1b25;border:1px solid #1c3442;color:var(--ink);border-radius:12px;padding:11px;cursor:pointer}.community-prompt>span{width:30px;height:30px;border-radius:9px;background:#142d3d;display:grid;place-items:center;color:#82c6e1}.community-prompt strong,.community-prompt small{display:block}.community-prompt small{color:#718b99;font-size:10px;margin-top:2px}
.lesson-footer{padding:16px 38px 22px;display:flex;justify-content:space-between;border-top:1px solid rgba(120,160,183,.10)}
.study-archive-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin:10px 0 22px}.study-archive-stats article{background:#0d1922;border:1px solid #1b2b36;border-radius:14px;padding:14px}.study-archive-stats strong,.study-archive-stats span{display:block}.study-archive-stats strong{font-size:25px}.study-archive-stats span{font-size:9px;color:#667f8e;text-transform:uppercase;letter-spacing:.55px}
.archive-list{display:flex;flex-direction:column;gap:7px}.archive-list button{display:flex;flex-direction:column;align-items:flex-start;text-align:left;background:#0d1820;border:1px solid #1a2c37;color:var(--ink);border-radius:13px;padding:14px;cursor:pointer}.archive-list small{font-size:8px;color:#6ea8c3;letter-spacing:.75px}.archive-list strong{font-size:13px;margin-top:4px}.archive-list span{font-size:10px;color:#69808d;margin-top:3px}
@media(max-width:700px){.study-content{grid-template-columns:1fr}.study-progress-wrap{align-items:flex-start}.study-ring{width:72px;height:72px}.study-page-head{grid-template-columns:1fr auto}.study-page-kicker{display:none}.lesson-header,.lesson-block{padding-left:20px;padding-right:20px}.lesson-footer{padding-left:20px;padding-right:20px}.lesson-header h1{font-size:36px}}

.lesson-action-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:12px}
.editorial-preview{margin-top:16px;padding-top:14px;border-top:1px solid var(--line)}
#editorial-week{display:grid;gap:6px}
.editorial-day{display:grid;grid-template-columns:62px 1fr;gap:10px;align-items:start;padding:8px 0;border-bottom:1px solid rgba(120,160,183,.08)}
.editorial-day>span{font-size:9px;color:#6f8998;text-transform:capitalize;padding-top:2px}
.editorial-day strong,.editorial-day small{display:block}.editorial-day strong{font-size:9px;color:#72b2d0;letter-spacing:.65px}.editorial-day small{font-size:10.5px;color:#a8bac4;margin-top:2px}
@media(max-width:620px){.lesson-action-grid{grid-template-columns:1fr}.editorial-day{grid-template-columns:54px 1fr}}

/* V0.3 AUTH + REAL DATA ------------------------------------------------- */
.auth-gate{position:fixed;inset:0;z-index:200;background:
  radial-gradient(circle at 25% 0,rgba(32,104,139,.24),transparent 34%),
  rgba(5,12,18,.97);display:grid;place-items:center;padding:20px;backdrop-filter:blur(18px)}
.auth-gate[hidden]{display:none}
.auth-card{width:min(440px,100%);border:1px solid rgba(120,177,205,.18);background:linear-gradient(180deg,rgba(15,29,40,.98),rgba(8,19,27,.98));border-radius:24px;padding:28px;box-shadow:0 40px 120px rgba(0,0,0,.45)}
.auth-logo{display:flex;align-items:center;gap:10px;margin-bottom:28px}.auth-logo>span{width:38px;height:38px;border-radius:11px;background:linear-gradient(145deg,#1775a2,#06466c);display:grid;place-items:center;font-size:11px;font-weight:800}.auth-logo strong,.auth-logo small{display:block}.auth-logo small{font-size:9px;color:#66808f}
.auth-card h1{font-size:34px;line-height:1.02;letter-spacing:-.04em;margin:5px 0 8px}.auth-copy{font-size:12px;color:#8ea3af;margin:0 0 22px}
.auth-tabs{display:grid;grid-template-columns:1fr 1fr;background:#09151e;border:1px solid #1d303d;border-radius:11px;padding:3px;margin-bottom:16px}.auth-tabs button{border:0;background:transparent;color:#657d8c;border-radius:8px;padding:8px;cursor:pointer}.auth-tabs button.active{background:#142734;color:#e7f1f5}
#auth-form{display:flex;flex-direction:column;gap:11px}#auth-form label{font-size:10px;color:#8196a2;display:flex;flex-direction:column;gap:5px}#auth-form input{background:#09151e;border:1px solid #203541;color:#eef5f8;border-radius:10px;padding:11px 12px;outline:none}#auth-form input:focus{border-color:#4f93b2}
.auth-error{min-height:16px;color:#dd957e;font-size:10px;text-align:center}.auth-note{display:block;text-align:center;color:#536c7a;font-size:9px;margin-top:15px}
.sync-pill .status-dot.connected{background:#5fc998;box-shadow:0 0 0 5px rgba(95,201,152,.08)}
@media(max-width:560px){.auth-card{padding:22px;border-radius:20px}.auth-card h1{font-size:30px}}

#auth-name-row[hidden]{display:none!important}

@media(max-width:560px){
  .auth-gate{padding:12px;overflow:auto}
  .auth-card{width:100%;max-width:calc(100vw - 24px);padding:20px;overflow:hidden}
  .auth-card h1{font-size:28px;overflow-wrap:anywhere}
  .auth-copy{max-width:100%;white-space:normal}
  .auth-tabs{width:100%;min-width:0}
  .auth-tabs button{min-width:0;font-size:12px}
  #auth-form input{width:100%;min-width:0}
}

/* GOOGLE CALENDAR OAUTH ------------------------------------------------- */
.oauth-uri-row{display:flex;gap:8px;align-items:center;margin:10px 0}
.oauth-uri-row code{flex:1;min-width:0;overflow:auto;background:#09151e;border:1px solid #203541;border-radius:10px;padding:10px;color:#9bc8dc;font-size:10px}
.google-console-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:8px 0 12px}
.google-console-link{display:block;text-align:center;text-decoration:none;border:1px solid #274252;background:#0c1a23;color:#9dcee3;border-radius:10px;padding:9px 10px;font-size:10px}
.google-console-link:hover{border-color:#3e6b82}
@media(max-width:560px){.google-console-actions{grid-template-columns:1fr}.oauth-uri-row{align-items:stretch;flex-direction:column}}
