:root{--navy:#172554;--blue:#2563eb;--bg:#f8fafc;--card:#fff;--text:#0f172a;--muted:#64748b;--danger:#dc2626;--ok:#16a34a}*{box-sizing:border-box}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:var(--bg);color:var(--text)}a{color:var(--blue)}.app-header{position:sticky;top:0;z-index:2;display:flex;justify-content:space-between;align-items:center;padding:14px 16px;background:var(--blue);color:white;padding-top:max(14px,env(safe-area-inset-top))}.app-header span{display:block;font-size:12px;color:#dbeafe}.app-header a{color:white;text-decoration:none}.app-shell{max-width:820px;margin:0 auto;padding:14px 14px 90px}.tabs{display:flex;gap:8px;overflow-x:auto;padding:4px 0 12px}.tabs button,.panel-form button,.row button,.login-card button,#loadHistory{border:0;border-radius:999px;background:#e2e8f0;color:var(--text);padding:10px 14px;font-weight:700}.tabs button.active,.panel-form button,.login-card button,#loadHistory{background:var(--blue);color:white}.tab-panel{display:none}.tab-panel.active{display:block}.cards{display:grid;grid-template-columns:1fr 1fr;gap:12px}.cards article,.list article,.login-card,.panel-form,#taskResult,#deployResult{background:var(--card);border:1px solid #e2e8f0;border-radius:18px;padding:16px;box-shadow:0 10px 30px rgba(15,23,42,.06)}.cards b{display:block;font-size:34px}.cards span,.muted{color:var(--muted)}label{display:block;margin:12px 0;font-weight:700}input,select,textarea{width:100%;margin-top:6px;border:1px solid #cbd5e1;border-radius:12px;padding:12px;font:inherit;background:white}textarea{resize:vertical}.panel-form{margin-bottom:18px}.list{display:grid;gap:12px}.row{display:flex;gap:10px;flex-wrap:wrap;margin:12px 0}.danger{background:var(--danger)!important}.alert{background:#fee2e2;color:#991b1b;border-radius:12px;padding:10px;margin:12px 0}.success{background:#dcfce7;color:#166534;border-radius:12px;padding:10px;margin:12px 0}.login-screen{min-height:100vh;display:grid;place-items:center;padding:20px;background:linear-gradient(160deg,var(--navy),#0f766e)}.login-card{width:min(100%,420px)}.login-card h1{font-size:48px;margin:0}.issue-actions{display:flex;gap:8px;flex-wrap:wrap}.issue-actions button{border:0;border-radius:10px;padding:8px 10px;background:#e0f2fe}.pill{display:inline-block;border-radius:999px;background:#e2e8f0;padding:4px 8px;font-size:12px}@media(min-width:700px){.tabs{justify-content:center}.app-shell{padding-top:24px}.cards{grid-template-columns:repeat(4,1fr)}}
button:disabled{opacity:.55;cursor:not-allowed}
.gizmo-stop-speaking{border:0;border-radius:999px;background:#dc2626;color:#fff;padding:10px 18px;font-weight:800;box-shadow:0 8px 20px rgba(220,38,38,.25)}
.button-link,.issue-actions a{display:inline-block;border-radius:10px;padding:8px 10px;background:#dbeafe;text-decoration:none;font-weight:700}.timeline{margin:12px 0;padding-left:22px}.timeline li{margin:8px 0;padding:8px;border-left:4px solid #cbd5e1;background:#f8fafc;border-radius:8px}.timeline li b{display:block}.timeline small,.timeline code{display:block;color:var(--muted);font-size:12px}.stage-complete,.stage-success{border-left-color:var(--ok)!important}.stage-needs-action,.stage-failure,.stage-cancelled{border-left-color:var(--danger)!important}.stage-pending,.stage-queued,.stage-in_progress{border-left-color:#f59e0b!important}.app-footer{max-width:820px;margin:0 auto 24px;padding:12px 14px;color:var(--muted);font-size:12px;text-align:center}

.checkbox-row{display:flex;align-items:center;gap:8px;margin:12px 0;font-weight:700}.checkbox-row input[type="checkbox"]{width:auto;margin:0;flex:0 0 auto}
.active-repo-label{margin-top:4px;font-weight:800;color:#fee2e2}.hidden{display:none!important}.repo-grid,.action-grid,.settings-grid{display:grid;gap:12px}.repo-card.selected{border-color:var(--blue);box-shadow:0 0 0 3px #bfdbfe,0 10px 30px rgba(15,23,42,.06)}.repo-card button,.action-grid button,.repo-card .button-link{width:100%;border:0;border-radius:16px;background:var(--blue);color:white;padding:14px 16px;font-weight:800;text-align:left}.repo-card button{text-align:center}.quick-actions{margin:20px 0}.action-grid button{min-height:112px;background:white;color:var(--text);border:1px solid #bfdbfe;box-shadow:0 10px 30px rgba(37,99,235,.08)}.tool-icon{display:inline-grid;place-items:center;width:36px;height:36px;margin-bottom:10px;border-radius:12px;background:#fee2e2;color:var(--danger);font-size:22px;font-weight:900}.action-grid b{display:block;font-size:22px;margin-bottom:8px}.action-grid span{display:block;color:var(--muted);font-weight:600}.mini-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:12px 0}.mini-stats span,.status-grid span{display:block;border-radius:14px;background:#f1f5f9;padding:10px;text-align:center;color:var(--muted);font-size:12px}.mini-stats b,.status-grid b{display:block;color:var(--text);font-size:20px}.status-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin:12px 0}.settings-box{margin-top:12px}.scoped-panel .repo-required .success,.scoped-panel .repo-required .alert{font-size:15px}button{min-height:44px}button:not(:disabled){cursor:pointer}@media(min-width:700px){.repo-grid{grid-template-columns:repeat(2,1fr)}.action-grid{grid-template-columns:repeat(4,1fr)}.settings-grid{grid-template-columns:1fr 1fr}.status-grid{grid-template-columns:repeat(3,1fr)}}
.handoff-panel textarea{font-family:ui-monospace,SFMono-Regular,Consolas,"Liberation Mono",monospace;font-size:13px;line-height:1.45}.instruction-panel{margin:12px 0;padding:12px;border:1px solid #cbd5e1;border-radius:12px;background:#f8fafc}.instruction-panel h3{margin:0 0 8px}.instruction-panel ol{margin:0;padding-left:22px}.instruction-panel li{margin:6px 0}
.home-heading h1{margin:4px 0 2px;font-size:28px}.home-heading p{margin:0 0 14px}.repo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.repo-card{background:var(--card);border:1px solid #dbe3ee;border-radius:14px;padding:12px;min-height:132px;box-shadow:0 8px 20px rgba(15,23,42,.05);cursor:pointer;touch-action:manipulation}.repo-card:focus{outline:3px solid #bfdbfe;outline-offset:2px}.repo-card h2{margin:0 0 10px;font-size:17px;line-height:1.15}.repo-card.selected{border-color:var(--blue);box-shadow:0 0 0 2px #bfdbfe,0 8px 20px rgba(15,23,42,.05)}.repo-card .mini-stats{grid-template-columns:1fr;gap:5px;margin:0}.repo-card .mini-stats span{display:flex;align-items:center;justify-content:space-between;gap:6px;border-radius:10px;padding:6px 7px;text-align:left;font-size:11px}.repo-card .mini-stats b{font-size:17px}.quick-actions{margin:4px 0 18px}.repo-tool-title{margin:10px 0 14px;font-size:30px}.back-button{border:0;border-radius:999px;background:#e2e8f0;color:var(--text);padding:10px 14px;font-weight:800}.action-grid{grid-template-columns:repeat(1,minmax(0,1fr));gap:10px}.action-grid button{min-height:92px;border-radius:14px;padding:12px}.action-grid .tool-icon{width:32px;height:32px;margin-bottom:8px;font-size:20px}.action-grid b{font-size:19px;margin-bottom:6px}.action-grid span{font-size:12px;line-height:1.25}.app-info-grid{display:grid;gap:12px}.app-info-grid article,.task-row{background:var(--card);border:1px solid #e2e8f0;border-radius:14px;padding:14px;box-shadow:0 8px 20px rgba(15,23,42,.05)}.app-info-grid h2{margin:0 0 8px;font-size:16px}.app-info-grid p{margin:0}.task-toolbar{display:flex;gap:10px;flex-wrap:wrap;margin:12px 0}.task-toolbar button,.task-actions button,.task-row summary{border:0;border-radius:999px;background:#dbeafe;color:var(--text);padding:10px 12px;font-weight:800;cursor:pointer}.task-list{display:grid;gap:10px}.task-row{display:grid;gap:10px;cursor:pointer}.task-row h3{margin:0 0 4px;font-size:17px}.task-row-planned{border-color:#facc15;background:#fffbeb}.planned-pill{background:#fef3c7;color:#92400e;font-weight:900}.task-row p{margin:0;color:var(--muted)}.task-row>div:first-child{display:flex;justify-content:space-between;color:var(--muted)}.task-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.task-modal{border:0;border-radius:16px;padding:0;width:min(92vw,560px)}.task-modal::backdrop{background:rgba(15,23,42,.45)}@media(min-width:700px){.repo-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.action-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.app-info-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.task-row{grid-template-columns:120px 1fr 140px 120px;align-items:center}.task-row>div:first-child{display:block}}
.settings-card-grid{display:grid;gap:12px;margin:16px 0}.settings-card{display:block;width:100%;min-height:128px;border:1px solid #fecaca;border-radius:18px;background:white;color:var(--text);padding:18px;text-align:left;box-shadow:0 10px 30px rgba(220,38,38,.08)}.settings-card b{display:block;font-size:22px;margin-bottom:8px}.settings-card span{display:block;color:var(--muted);font-weight:600;line-height:1.35}@media(min-width:700px){.settings-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
.user-admin-page{margin-top:12px}.settings-subhead,.list-header,.user-card-main{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.settings-subhead{margin-bottom:12px}.settings-subhead h2,.list-header h3,.user-form-card h3{margin:0}.user-admin-layout{display:grid;gap:16px}.user-form-card{position:sticky;top:12px}.user-list{display:grid;gap:12px}.user-card{background:var(--card);border:1px solid #e2e8f0;border-radius:16px;padding:14px;box-shadow:0 8px 20px rgba(15,23,42,.05)}.user-card h3{margin:0 0 4px;font-size:18px}.user-card p{margin:0;color:var(--muted)}.user-pills{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.user-pill-active{background:#dcfce7;color:#166534}.user-pill-protected{background:#fef3c7;color:#92400e}.user-meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:12px 0}.user-meta div{border-radius:12px;background:#f8fafc;padding:10px}.user-meta dt{color:var(--muted);font-size:12px;font-weight:800;text-transform:uppercase}.user-meta dd{margin:3px 0 0;font-weight:800}@media(min-width:850px){.user-admin-layout{grid-template-columns:minmax(280px,360px) 1fr;align-items:start}}@media(max-width:520px){.settings-subhead,.list-header,.user-card-main{display:block}.settings-subhead button,.list-header button{margin-top:10px}.user-pills{justify-content:flex-start;margin-top:10px}.user-meta{grid-template-columns:1fr}}
.today-dashboard{display:grid;gap:10px;margin:0 0 18px}.today-lane{background:var(--card);border:1px solid #dbe3ee;border-radius:14px;padding:12px;box-shadow:0 8px 20px rgba(15,23,42,.05)}.today-lane h2{margin:0 0 10px;font-size:17px}.today-list{display:grid;gap:8px}.today-task{width:100%;border:1px solid #e2e8f0;border-radius:12px;background:#f8fafc;color:var(--text);padding:10px;text-align:left}.today-task span,.today-task small,.today-task em{display:block}.today-task span{color:var(--blue);font-size:12px;font-weight:800}.today-task b{display:block;margin:3px 0;font-size:14px;line-height:1.25}.today-task small{color:var(--muted);font-size:11px;font-weight:800;text-transform:uppercase}.today-task em{margin-top:4px;color:var(--text);font-size:12px;font-style:normal}.project-heading{margin-top:18px}@media(min-width:700px){.today-dashboard{grid-template-columns:repeat(4,minmax(0,1fr))}.today-lane{min-height:170px}}
.mission-summary{display:grid;gap:8px;margin:12px 0}.mission-summary article{background:var(--card);border:1px solid #dbe3ee;border-radius:12px;padding:12px;box-shadow:0 8px 20px rgba(15,23,42,.05)}.mission-summary span{display:block;color:var(--muted);font-size:12px;font-weight:800}.mission-summary b{display:block;margin-top:4px;font-size:26px}.repo-health-summary b{font-size:14px;line-height:1.35}.mission-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:12px 0 18px}.mission-actions button{border:0;border-radius:999px;background:#dbeafe;color:var(--text);padding:10px 12px;font-weight:900}.mission-actions button:first-child{background:var(--blue);color:white}.section-heading h2{margin:18px 0 10px;font-size:18px}.project-badge{display:inline-block!important;width:auto;max-width:100%;border-radius:999px;background:#dbeafe;color:#1d4ed8!important;padding:3px 7px;font-size:11px!important}.today-task small{margin-top:5px}.projects-snapshot{display:grid;gap:10px;margin:0 0 20px}.project-snapshot-card{position:relative;background:var(--card);border:1px solid #dbe3ee;border-radius:14px;padding:12px;box-shadow:0 8px 20px rgba(15,23,42,.05);cursor:pointer}.project-snapshot-card:focus{outline:3px solid #bfdbfe;outline-offset:2px}.project-snapshot-card h3{margin:0 82px 10px 0;font-size:17px}.project-snapshot-card dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin:0}.project-snapshot-card div{border-radius:10px;background:#f1f5f9;padding:8px}.project-snapshot-card dt{color:var(--muted);font-size:11px;font-weight:900}.project-snapshot-card dd{margin:2px 0 0;font-size:20px;font-weight:900}.repo-card{position:relative}.repo-card h2{padding-right:82px}.repo-health-badge{position:absolute;top:10px;right:10px;border-radius:999px;padding:4px 8px;font-size:10px;font-weight:900;line-height:1;border:1px solid transparent}.repo-health-connected{background:#dcfce7;color:#166534;border-color:#bbf7d0}.repo-health-warning{background:#fef3c7;color:#92400e;border-color:#fde68a}.repo-health-disconnected{background:#fee2e2;color:#991b1b;border-color:#fecaca}@media(min-width:700px){.mission-actions{display:flex;flex-wrap:wrap}.mission-actions button{min-width:140px}.projects-snapshot{grid-template-columns:repeat(4,minmax(0,1fr))}}
.mission-quick-add{background:var(--card);border:1px solid #dbe3ee;border-radius:14px;padding:12px;margin:0 0 18px;box-shadow:0 8px 20px rgba(15,23,42,.05)}.mission-quick-add h2{margin:0 0 8px;font-size:18px}.mission-quick-add-grid{display:grid;gap:8px}.mission-quick-add label{margin:0}.mission-quick-add .row{align-items:center;margin:10px 0 0}.mission-quick-add button{border:0;border-radius:999px;background:var(--blue);color:white;padding:10px 14px;font-weight:900}.inline-success{color:#166534;font-weight:800}.inline-alert{color:#991b1b;font-weight:800}@media(min-width:700px){.mission-quick-add-grid{grid-template-columns:1fr 1fr 2fr 2fr}}
.roadmap-list{display:grid;gap:16px}.roadmap-phase{display:grid;gap:10px}.roadmap-phase h2{margin:12px 0 0;font-size:19px}.roadmap-item{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;background:var(--card);border:1px solid #dbe3ee;border-radius:14px;padding:14px;box-shadow:0 8px 20px rgba(15,23,42,.05)}.roadmap-item strong{display:block;margin-bottom:6px}.roadmap-item p{margin:0 0 8px}.roadmap-item small{color:var(--muted)}.status-badge{flex:0 0 auto;border-radius:999px;padding:5px 9px;background:#e2e8f0;color:var(--text);font-size:12px;font-weight:900;text-transform:capitalize}.status-done,.status-completed{background:#dcfce7;color:#166534}.status-in-progress{background:#dbeafe;color:#1d4ed8}.status-blocked{background:#fee2e2;color:#991b1b}.status-pending,.status-planned{background:#f1f5f9;color:#475569}.status-draft{background:#fef3c7;color:#92400e}.status-cancelled{background:#e2e8f0;color:#334155}@media(max-width:560px){.roadmap-item{display:block}.status-badge{display:inline-block;margin-top:10px}}
.daz-shell-body{background:#f8fafc}.daz-app-header{display:grid;grid-template-columns:44px minmax(0,1fr) auto;gap:12px;background:#111827;padding:12px 14px;padding-top:max(12px,env(safe-area-inset-top));box-shadow:0 8px 24px rgba(15,23,42,.14)}.daz-app-header strong{display:block;font-size:18px;line-height:1.15}.daz-app-header span{color:#cbd5e1}.icon-button{width:44px;height:44px;border:1px solid rgba(255,255,255,.24);border-radius:8px;background:transparent;display:grid;place-content:center;gap:5px}.icon-button span{display:block;width:18px;height:2px;background:white}.live-state{border:1px solid rgba(255,255,255,.28);border-radius:999px;padding:6px 9px;font-size:12px;font-weight:800;white-space:nowrap}.legacy-tabs{display:none}.app-shell{width:min(100%,900px);max-width:900px;min-height:calc(100vh - 68px);padding:0 0 210px}.drawer{position:fixed;z-index:50;inset:0 auto 0 0;width:min(84vw,320px);transform:translateX(-100%);transition:transform 180ms ease;background:white;border-right:1px solid #dbe3ee;box-shadow:16px 0 30px rgba(15,23,42,.18);padding-top:env(safe-area-inset-top)}.drawer.is-open{transform:translateX(0)}.drawer-header{display:flex;justify-content:space-between;align-items:center;min-height:64px;padding:0 14px;border-bottom:1px solid #dbe3ee}.drawer-close{width:40px;height:40px;border:0;border-radius:8px;background:#f1f5f9;font-size:26px;line-height:1}.drawer-nav{display:grid;gap:8px;padding:12px}.drawer-nav button,.drawer-link{min-height:44px;border:1px solid #dbe3ee;border-radius:8px;background:#f8fafc;color:#111827;padding:0 14px;text-align:left;font-weight:800;text-decoration:none;display:flex;align-items:center}.drawer-link{background:#fee2e2;color:#991b1b;border-color:#fecaca}.drawer-scrim{position:fixed;z-index:40;inset:0;background:rgba(15,23,42,.34)}.chat-panel{padding:0}.warning-strip{display:grid;gap:6px;padding:10px 14px;background:#fff7ed;border-bottom:1px solid #fed7aa}.warning-strip span{color:#b45309;font-size:12px;font-weight:800}.conversation{height:calc(100vh - 330px);min-height:320px;overflow-y:auto;padding:14px 14px 150px}.message{width:fit-content;max-width:min(84%,620px);margin:12px 0;padding:10px 12px;border:1px solid #dbe3ee;border-radius:8px;background:white}.message span{display:block;margin-bottom:4px;color:var(--muted);font-size:12px;font-weight:800}.message p{margin:0;line-height:1.45;white-space:pre-wrap}.message.user{margin-left:auto;background:#ecfeff;border-color:#a5f3fc}.talk-panel{position:fixed;left:50%;bottom:0;z-index:10;transform:translateX(-50%);width:min(100%,900px);padding:12px 14px max(16px,env(safe-area-inset-bottom));background:rgba(248,250,252,.96);border-top:1px solid #dbe3ee}.status-text{margin:0 0 10px;color:var(--muted);text-align:center;font-weight:800}.talk-button{width:76px;height:76px;border:0;border-radius:50%;display:block;margin:0 auto 12px;background:#0f766e;box-shadow:0 10px 30px rgba(15,118,110,.28)}.talk-button.is-listening{background:var(--danger)}.mic-dot{width:28px;height:28px;border-radius:50%;border:8px solid white;display:inline-block}.text-fallback{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:8px}.text-fallback input{min-width:0;height:44px;border:1px solid #dbe3ee;border-radius:8px;padding:0 12px}.text-fallback button,#diagnosticsRefresh{border:0;border-radius:8px;background:#134e4a;color:white;min-height:44px;padding:0 14px;font-weight:800}.text-fallback .chat-dictate-button{min-width:52px;background:#dbeafe;color:#0f172a}.text-fallback .chat-dictate-button.is-listening{background:#dc2626;color:white}.chat-clear-button{display:block;width:100%;margin-top:8px;border:1px solid #cbd5e1;border-radius:8px;background:white;color:#334155;min-height:40px;font-weight:800}.placeholder-view{background:white;border:1px solid #dbe3ee;border-radius:8px;padding:16px;margin:14px}.placeholder-view h1{margin:0 0 8px}.placeholder-view p{margin:0}.tab-panel:not(.chat-panel){padding:14px}@media(min-width:720px){.warning-strip{grid-template-columns:repeat(3,minmax(0,1fr))}.conversation{height:calc(100vh - 310px)}}@media(max-width:520px){.daz-app-header{grid-template-columns:44px minmax(0,1fr);}.live-state{display:none}.app-shell{padding-bottom:210px}.conversation{min-height:300px}.text-fallback{grid-template-columns:minmax(0,1fr) 52px 64px}}
.assistant-snapshot{display:grid;gap:10px;padding:12px 14px;background:#f8fafc;border-bottom:1px solid #dbe3ee}.assistant-snapshot h2{margin:0;font-size:18px}.assistant-snapshot p{margin:4px 0 0}.assistant-snapshot-grid{display:grid;gap:10px}.assistant-snapshot-column{display:grid;gap:8px}.assistant-snapshot-column h3{margin:0;font-size:14px}.assistant-snapshot-item,.daz-task-card{background:white;border:1px solid #dbe3ee;border-radius:8px;padding:10px;box-shadow:0 8px 20px rgba(15,23,42,.04)}.assistant-snapshot-item strong,.daz-task-card h3{display:block;margin:0 0 6px;font-size:15px}.assistant-snapshot-item p,.daz-task-card p{margin:0;color:var(--muted);line-height:1.35}.assistant-snapshot-item small,.daz-task-meta{display:block;color:var(--muted);font-size:12px;font-weight:800}.daz-task-card{display:grid;gap:10px}.daz-task-card-head{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}.daz-task-actions{display:flex;gap:8px;flex-wrap:wrap}.daz-task-actions button{border:0;border-radius:8px;background:#dbeafe;color:#0f172a;min-height:40px;padding:0 12px;font-weight:900}.task-inline-result{min-height:18px;font-size:13px;font-weight:800}.task-inline-result.success{background:transparent;color:#166534;padding:0;margin:0}.task-inline-result.alert{background:transparent;color:#991b1b;padding:0;margin:0}@media(min-width:720px){.assistant-snapshot{grid-template-columns:160px minmax(0,1fr);align-items:start}.assistant-snapshot-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
.pending-action-card{width:min(92%,640px);margin:12px 0;padding:12px;border:1px solid #bfdbfe;border-left:4px solid #2563eb;border-radius:8px;background:white;box-shadow:0 8px 20px rgba(15,23,42,.06)}.pending-action-head{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}.pending-action-head span{display:block;color:#1d4ed8;font-size:12px;font-weight:900}.pending-action-head h3{margin:3px 0 0;font-size:16px}.pending-action-head b{border-radius:999px;background:#dbeafe;color:#1d4ed8;padding:4px 8px;font-size:12px}.pending-action-card p{margin:8px 0;white-space:pre-wrap}.pending-action-card dl{display:grid;gap:6px;margin:10px 0}.pending-action-card dl div{border-radius:8px;background:#f8fafc;padding:8px}.pending-action-card dt{color:var(--muted);font-size:11px;font-weight:900;text-transform:uppercase}.pending-action-card dd{margin:2px 0 0;font-weight:800}.pending-action-candidates{display:grid;grid-template-columns:1fr;gap:8px;margin:10px 0}.pending-action-candidate{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;min-height:46px;border:1px solid #bfdbfe;border-radius:8px;background:#eff6ff;color:#0f172a;padding:8px 12px;text-align:left;font-weight:900}.pending-action-candidate small{color:#475569;font-size:12px;font-weight:800}.pending-action-candidate.selected{border-color:#0f766e;background:#ccfbf1}.pending-action-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.pending-action-actions button,.pending-action-edit button{border:0;border-radius:8px;background:#dbeafe;color:#0f172a;min-height:40px;padding:0 12px;font-weight:900}.pending-action-actions button:first-child{background:#134e4a;color:white}.pending-action-actions button[aria-disabled="true"]{opacity:.65}.pending-action-actions button:disabled{opacity:.45;cursor:not-allowed}.pending-action-actions button:last-child{background:#fee2e2;color:#991b1b}.pending-action-edit{display:grid;gap:8px;margin:10px 0}.pending-action-edit textarea{margin:0}.pending-action-debug{margin-top:10px;border:1px dashed #94a3b8;border-radius:8px;background:#f8fafc;padding:8px;color:#334155;font-size:12px}.pending-action-debug b{display:block;margin-bottom:6px}.pending-action-debug dl{grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;margin:0}.pending-action-debug dl div{padding:5px;background:white}.pending-action-debug dt{font-size:10px}.pending-action-debug dd{font-size:12px;font-weight:800;overflow-wrap:anywhere}.pending-action-confirmed{border-left-color:#16a34a}.pending-action-cancelled{border-left-color:#dc2626}@media(min-width:720px){.pending-action-card dl{grid-template-columns:repeat(2,minmax(0,1fr))}.pending-action-candidates{grid-template-columns:repeat(2,minmax(0,1fr))}}
.booking-dashboard-card{width:100%;border:1px solid #bfdbfe;border-radius:8px;background:white;color:var(--text);padding:10px;text-align:left;box-shadow:0 8px 20px rgba(15,23,42,.04)}.booking-dashboard-card span,.booking-dashboard-card small{display:block;color:var(--muted);font-size:12px;font-weight:900}.booking-dashboard-card b{display:block;margin:4px 0;font-size:16px}.booking-draft-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:12px 0}.booking-draft-stats article{background:white;border:1px solid #dbe3ee;border-radius:8px;padding:12px;box-shadow:0 8px 20px rgba(15,23,42,.04)}.booking-draft-stats span{display:block;color:var(--muted);font-size:12px;font-weight:900}.booking-draft-stats b{display:block;margin-top:4px;font-size:26px}.booking-draft-list{display:grid;gap:10px}.booking-draft-card{background:white;border:1px solid #dbe3ee;border-radius:8px;padding:0;box-shadow:0 8px 20px rgba(15,23,42,.04)}.booking-draft-card summary{display:flex;justify-content:space-between;gap:10px;align-items:flex-start;padding:12px;cursor:pointer}.booking-draft-card summary b{display:block}.booking-draft-card summary small{display:block;margin-top:4px;color:var(--muted);font-size:12px}.booking-draft-body{border-top:1px solid #e2e8f0;padding:12px}.booking-draft-meta{display:grid;gap:8px;margin:0 0 12px}.booking-draft-meta div{border-radius:8px;background:#f8fafc;padding:8px}.booking-draft-meta dt{color:var(--muted);font-size:11px;font-weight:900;text-transform:uppercase}.booking-draft-meta dd{margin:2px 0 0;font-weight:800}.booking-draft-form-grid{display:grid;gap:8px}.status-approved{background:#dcfce7;color:#166534}.status-rejected{background:#fee2e2;color:#991b1b}.status-archived{background:#e2e8f0;color:#334155}@media(min-width:720px){.booking-draft-stats{grid-template-columns:repeat(4,minmax(0,1fr))}.booking-draft-meta,.booking-draft-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
.drawer-right{inset:0 0 0 auto;transform:translateX(100%);border-right:0;border-left:1px solid #dbe3ee;box-shadow:-16px 0 30px rgba(15,23,42,.18)}.drawer-right.is-open{transform:translateX(0)}.kebab-button{gap:4px}.kebab-button span{width:5px;height:5px;border-radius:50%}.assistant-home{height:calc(100dvh - 68px);min-height:0;display:flex;flex-direction:column}.chat-panel .conversation{flex:1 1 auto;height:auto;min-height:0;padding:12px 14px 18px;scroll-padding-bottom:18px}.chat-panel .talk-panel{position:relative;left:auto;bottom:auto;transform:none;width:100%;flex:0 0 auto;padding:8px 14px max(10px,env(safe-area-inset-bottom))}.chat-panel .talk-button{width:54px;height:54px;margin:0 auto 6px}.chat-panel .mic-dot{width:20px;height:20px;border-width:6px}.chat-panel .status-text{margin:0 0 6px}.chat-panel .chat-clear-button{margin-top:6px;min-height:36px}.recommendation-grid{display:grid;gap:10px}.recommendation-card{width:100%;border:1px solid #dbe3ee;border-radius:8px;background:white;color:var(--text);padding:14px;text-align:left;box-shadow:0 8px 20px rgba(15,23,42,.04)}.recommendation-card b{display:block;margin-bottom:6px;font-size:16px}.recommendation-card span{display:block;color:var(--muted);font-weight:700;line-height:1.35}.recommendation-detail{margin-top:12px;background:white;border:1px solid #bfdbfe;border-radius:8px;padding:14px;box-shadow:0 8px 20px rgba(15,23,42,.04)}.recommendation-detail h2{margin:10px 0 8px;font-size:20px}.recommendation-detail p{margin:8px 0}@media(min-width:720px){.recommendation-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:520px){.daz-app-header{grid-template-columns:44px minmax(0,1fr) 44px}.assistant-home{height:calc(100dvh - 68px)}.chat-panel .conversation{padding-bottom:14px}}
.message p{overflow-wrap:anywhere;word-break:break-word}
.text-fallback textarea{min-width:0;min-height:44px;max-height:34vh;resize:vertical;border:1px solid #dbe3ee;border-radius:8px;padding:10px 12px;font:inherit}.gizmo-copy-response{margin-top:8px;border:0;background:transparent;color:#7a1231;font-size:12px;font-weight:800;cursor:pointer}.gizmo-new-conversation{border:1px solid #d8b8c2;border-radius:999px;background:white;color:#7a1231;padding:8px 12px;font-weight:800}
.chat-selection-card{width:min(92%,640px);padding:10px 12px;border:1px solid #bfdbfe;border-radius:8px;background:white;box-shadow:0 8px 20px rgba(15,23,42,.06)}
.chat-selection-card .daz-task-actions{display:grid;grid-template-columns:1fr;gap:8px}
.chat-selection-card button{width:100%;min-height:46px;border:1px solid #bfdbfe;border-radius:8px;background:#dbeafe;color:#0f172a;padding:0 12px;text-align:left;font-weight:900;user-select:text}
@media(min-width:520px){.chat-selection-card .daz-task-actions{grid-template-columns:repeat(2,minmax(0,1fr))}}
.table-scroll{overflow-x:auto}.table-scroll table{width:100%;border-collapse:collapse;min-width:760px}.table-scroll th,.table-scroll td{border-bottom:1px solid #dbe3ee;padding:8px;text-align:left;vertical-align:top}.table-scroll th{font-size:12px;text-transform:uppercase;color:var(--muted)}
@media(max-width:520px){.chat-panel .talk-panel{box-sizing:border-box;padding-left:max(12px,env(safe-area-inset-left));padding-right:max(12px,env(safe-area-inset-right))}.chat-panel .text-fallback:not(.gizmo-text-composer){grid-template-columns:minmax(0,1fr) 52px;align-items:center;width:100%;box-sizing:border-box}.chat-panel .text-fallback:not(.gizmo-text-composer) input,.chat-panel .text-fallback:not(.gizmo-text-composer) textarea{grid-column:1;width:100%;min-width:0;box-sizing:border-box}.chat-panel .text-fallback .chat-dictate-button{grid-column:2;width:52px;min-width:52px;padding:0}.chat-panel .text-fallback:not(.gizmo-text-composer) button[type="submit"]{grid-column:1 / -1;width:100%;min-height:44px}}
.phase1-view{max-width:900px;margin:0 auto}.phase1-hero{padding:22px 18px 14px}.phase1-hero h1{margin:2px 0 4px;font-size:clamp(28px,5vw,42px);line-height:1.1}.phase1-eyebrow{margin:0;color:#0f766e;font-size:12px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.end-of-day-message{margin:14px 0 0;border:1px solid #bbf7d0;border-radius:12px;background:#f0fdf4;color:#166534;padding:12px;font-weight:900}.today-focus-grid{display:grid;gap:12px;padding:0 14px 24px}.phase1-card,.business-card{border:1px solid #dbe3ee;border-radius:14px;background:white;padding:14px;box-shadow:0 8px 20px rgba(15,23,42,.05)}.phase1-card h2,.business-card h2{margin:0 0 10px;font-size:18px}.phase1-list{display:grid;gap:8px}.phase1-list-item{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;border-radius:10px;background:#f8fafc;padding:10px}.phase1-list-item strong,.phase1-list-item small{display:block}.phase1-list-item small{margin-top:3px;color:var(--muted);line-height:1.35}.phase1-list-item>span,.phase1-approval{display:inline-block;border-radius:999px;background:#e0f2fe;color:#075985;padding:4px 8px;font-size:11px;font-weight:900;white-space:nowrap}.phase1-empty{margin:0;color:var(--muted)}.business-grid{display:grid;gap:12px}.business-card{display:grid;gap:10px}.business-card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}.business-card-head h2{margin:0}.business-card-head span{border-radius:999px;background:#f1f5f9;padding:4px 8px;color:#475569;font-size:11px;font-weight:900}.phase1-form-grid{display:grid;gap:10px}.task-filter-row{display:flex;gap:10px;flex-wrap:wrap;margin:14px 0}.task-filter-row label{min-width:160px}.priority-urgent{border-left:4px solid #dc2626}.priority-high{border-left:4px solid #f59e0b}.recommendation-card{display:block;text-align:left}.recommendation-card h2{margin:0 0 4px;font-size:18px}.recommendation-card p{margin:8px 0}.recommendation-urgent{border-left:4px solid #dc2626}.recommendation-high{border-left:4px solid #f59e0b}@media(min-width:700px){.today-focus-grid{grid-template-columns:repeat(2,minmax(0,1fr));padding:0 18px 28px}.phase1-priorities{grid-column:1/-1}.business-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.phase1-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(min-width:1000px){.today-focus-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.phase1-priorities{grid-column:span 2}.business-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:520px){.phase1-hero{padding:18px 14px 12px}.business-card-head{display:block}.business-card-head span{display:inline-block;margin-top:6px}.phase1-list-item{display:block}.phase1-list-item>span{margin-top:7px}.phase1-card,.business-card{padding:12px}}

/* Conversation-first landing */
.drawer-nav-group{border-top:1px solid #e2e8f0;padding-top:8px}.drawer-nav-group summary{min-height:44px;display:flex;align-items:center;justify-content:space-between;cursor:pointer;color:#475569;font-weight:900;padding:0 14px;list-style:none}.drawer-nav-group summary::-webkit-details-marker{display:none}.drawer-nav-group summary::after{content:"+";font-size:20px}.drawer-nav-group[open] summary::after{content:"−"}.drawer-nav-group>div{display:grid;gap:8px;padding-top:8px}.drawer-nav-group button{background:white;font-weight:750}
/* The installed iPhone PWA needs a menu scroll surface, not background page scrolling. */
body.gizmo-drawer-open{overflow:hidden}
.drawer-right{max-height:100dvh;overflow-y:auto;overscroll-behavior-y:contain;-webkit-overflow-scrolling:touch;padding-bottom:max(12px,env(safe-area-inset-bottom))}
.drawer-scrim{touch-action:none}
.conversation-welcome{flex:0 0 auto;padding:clamp(18px,4vh,34px) 18px 10px;text-align:center;background:linear-gradient(180deg,#f0fdfa 0%,#f8fafc 100%)}.conversation-eyebrow{margin:0 0 5px;color:#0f766e;font-size:11px;font-weight:900;letter-spacing:.16em;text-transform:uppercase}.conversation-welcome h1{margin:0;color:#0f172a;font-size:clamp(25px,4.8vw,40px);font-weight:650;line-height:1.12}.conversation-welcome>p:last-of-type{margin:6px 0 10px;color:#64748b;font-size:clamp(15px,2.2vw,18px)}.gizmo-waveform{position:relative;width:min(100%,620px);height:clamp(54px,8vh,82px);margin:0 auto;overflow:hidden;border-radius:18px;background:rgba(255,255,255,.58);border:1px solid rgba(13,148,136,.12)}.gizmo-waveform canvas{display:block;width:100%;height:100%}.gizmo-state-indicator{position:absolute;left:50%;bottom:4px;transform:translateX(-50%);color:#0f766e;font-size:10px;font-weight:900;letter-spacing:.1em;text-transform:uppercase;opacity:.72}.gizmo-waveform[data-state="error"]{border-color:rgba(180,83,9,.28);background:#fff7ed}.gizmo-waveform[data-state="error"] .gizmo-state-indicator{color:#b45309}
@media(max-height:700px){.conversation-welcome{padding-top:12px}.gizmo-waveform{height:48px}.conversation-welcome>p:last-of-type{margin-bottom:7px}.chat-panel .talk-button{width:48px;height:48px}}
@media(prefers-reduced-motion:reduce){.gizmo-waveform canvas{display:none}.gizmo-waveform{height:38px;background:white}.gizmo-state-indicator{top:50%;bottom:auto;transform:translate(-50%,-50%);opacity:1}}

/* Voice-first assistant home */
body.voice-home-active{min-height:100vh;min-height:100dvh;overflow:hidden;background:#52051a;color:#fff}
body.voice-home-active::before{content:"";position:fixed;inset:0;pointer-events:none;background:
radial-gradient(circle at 50% 42%,rgba(225,71,103,.2),transparent 42%),
radial-gradient(circle at 12% 90%,rgba(26,0,9,.36),transparent 46%),
linear-gradient(155deg,#720a29 0%,#57051c 48%,#31000f 100%)}
body.voice-home-active .daz-app-header{position:fixed;z-index:20;inset:0 0 auto;min-height:calc(58px + env(safe-area-inset-top));grid-template-columns:42px 1fr 42px;padding:calc(8px + env(safe-area-inset-top)) 12px 8px;background:transparent;box-shadow:none}
body.voice-home-active .daz-app-header .brand-title{text-align:center;align-self:center}
body.voice-home-active .daz-app-header .brand-title strong{font-size:15px;font-weight:750;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,247,240,.86)}
body.voice-home-active .daz-app-header .brand-subtitle{display:none}
body.voice-home-active .icon-button{width:40px;height:40px;border-color:rgba(255,255,255,.13);border-radius:50%;background:rgba(255,255,255,.055);backdrop-filter:blur(12px)}
body.voice-home-active .icon-button span{background:rgba(255,255,255,.82)}
body.gizmo-text-mode-active .daz-app-header{background:#fff8f5;border-bottom:1px solid #ecd8dc}
body.gizmo-text-mode-active .daz-app-header .brand-title strong{color:#7a1231}
body.gizmo-text-mode-active .icon-button{border-color:#dfc6cc;background:#fff}
body.gizmo-text-mode-active .icon-button span{background:#7a1231}
body.gizmo-text-mode-active{height:var(--gizmo-viewport-height,100dvh);overflow:hidden;overscroll-behavior:none}
body.gizmo-text-mode-active .app-shell,body.gizmo-text-mode-active .tab-panel.active,body.gizmo-text-mode-active .chat-panel{height:100%;min-height:0;overflow:hidden}
.notification-counts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:12px 0}.notification-counts strong{padding:12px;border:1px solid #cbd5e1;border-radius:12px;background:#f8fafc}.notification-card-list{display:grid;gap:12px}.notification-card{background:white;border:1px solid #dbe3ee;border-radius:14px;padding:14px;box-shadow:0 8px 24px rgba(15,23,42,.06);cursor:pointer}.notification-card.is-unread{border-left:5px solid #2563eb;background:#eff6ff}.notification-card:focus-visible{outline:3px solid #93c5fd;outline-offset:2px}.notification-card.is-focused{border-color:#2563eb;box-shadow:0 0 0 3px #dbeafe}.notification-card h3{margin:0 0 6px}.notification-card p{white-space:pre-wrap}.notification-card .notification-read-state{color:#1d4ed8;font-size:12px;font-weight:800}.notification-card dl{display:grid;grid-template-columns:max-content 1fr;gap:5px 12px}.notification-card dd{margin:0;overflow-wrap:anywhere}.notification-actions{display:flex;gap:8px;flex-wrap:wrap}.notification-actions button{min-height:42px;border:0;border-radius:9px;padding:0 12px;background:#e2e8f0;font-weight:800}.notification-actions button[data-notification-action="approve"]{background:#166534;color:white}.notification-actions button[data-notification-action="reject"]{background:#991b1b;color:white}
body.voice-home-active .app-shell{position:relative;width:100%;max-width:none;height:100vh;height:100dvh;min-height:0;padding:0}
.assistant-home.gizmo-shell{position:relative;height:100vh;height:100dvh;min-height:0;max-height:none;display:grid;grid-template-rows:minmax(180px,1fr) minmax(0,auto) auto;flex-direction:initial;padding:calc(76px + env(safe-area-inset-top)) clamp(20px,6vw,42px) calc(18px + env(safe-area-inset-bottom));overflow:hidden}
.gizmo-shell .conversation-welcome{padding:clamp(14px,5vh,52px) 0 0;background:none;color:#fff}
.gizmo-shell .conversation-eyebrow{display:none}
.gizmo-shell .conversation-welcome h1{color:#fff8f3;font-size:clamp(34px,10vw,58px);font-weight:630;letter-spacing:-.035em;line-height:1.03;text-shadow:0 8px 35px rgba(24,0,8,.3)}
.gizmo-shell .conversation-welcome>p:last-of-type{margin:9px 0 0;color:rgba(255,241,234,.76);font-size:clamp(19px,5.4vw,27px);font-weight:420}
.gizmo-shell .gizmo-waveform{align-self:center;width:min(100%,720px);height:clamp(145px,27vh,270px);margin:0 auto;border:0;border-radius:0;background:transparent;overflow:visible}
.gizmo-shell .gizmo-current-response{display:none;align-self:end;width:min(100%,620px);height:auto;min-height:0;max-height:18vh;margin:0 auto;padding:0 0 clamp(8px,2vh,18px);overflow:auto;text-align:center;color:rgba(255,248,244,.94);scrollbar-width:none}
.gizmo-shell .gizmo-current-response::-webkit-scrollbar{display:none}
.gizmo-current-response:not(.text-mode) .message{display:none}
.gizmo-current-response:not(.text-mode) .message.is-current{display:block}
.gizmo-current-response .message.is-current{width:100%;max-width:none;margin:0;padding:0;border:0;background:transparent;box-shadow:none}
.gizmo-current-response .message.is-current span{display:none}
.gizmo-current-response .message.is-current p{font-size:clamp(16px,4.5vw,21px);line-height:1.45;text-wrap:balance}
.gizmo-shell .gizmo-voice-controls{position:relative;left:auto;bottom:auto;transform:none;width:100%;padding:0;background:none;border:0}
.gizmo-shell .status-text{margin:0 0 10px;color:rgba(255,239,232,.68);font-size:13px;font-weight:650;letter-spacing:.04em}
.gizmo-shell .gizmo-primary-voice-control{position:relative;width:78px;height:78px;margin:0 auto 16px;border:1px solid rgba(255,255,255,.24);background:rgba(255,255,255,.14);box-shadow:0 14px 38px rgba(20,0,7,.3),inset 0 1px rgba(255,255,255,.18);backdrop-filter:blur(18px);transition:transform .18s ease,background .18s ease,box-shadow .18s ease}
.gizmo-shell .gizmo-primary-voice-control:active{transform:scale(.96)}
.microphone-icon{position:relative;display:block;width:20px;height:30px;margin:auto;border:3px solid #fff;border-radius:12px}
.microphone-icon::before{content:"";position:absolute;left:50%;bottom:-9px;width:31px;height:18px;border:3px solid #fff;border-top:0;border-radius:0 0 18px 18px;transform:translateX(-50%)}
.microphone-icon::after{content:"";position:absolute;left:50%;bottom:-15px;width:3px;height:8px;background:#fff;transform:translateX(-50%)}
.gizmo-shell .gizmo-primary-voice-control.is-listening{background:rgba(255,225,224,.24);box-shadow:0 0 0 9px rgba(255,255,255,.07),0 0 46px rgba(255,183,194,.28)}
.gizmo-shell .gizmo-primary-voice-control.is-thinking{background:rgba(255,255,255,.14);animation:gizmo-breathe 1.45s ease-in-out infinite}
.gizmo-shell .gizmo-primary-voice-control.is-speaking,.gizmo-shell .gizmo-primary-voice-control.is-replying{background:rgba(255,255,255,.22)}
.gizmo-bottom-toolbar{display:flex;justify-content:center;gap:8px}
.gizmo-mode-button{min-height:42px;border:1px solid rgba(255,255,255,.12);border-radius:999px;padding:0 14px;background:rgba(255,255,255,.065);color:rgba(255,244,238,.82);font:inherit;font-size:13px;font-weight:650;backdrop-filter:blur(12px)}
.gizmo-mode-button span{margin-right:6px;font-size:15px}
.gizmo-shell .voice-warning{width:min(100%,560px);margin:0 auto 10px;color:#ffe2d7;text-align:center;font-size:13px}
.gizmo-text-header{display:none}
.gizmo-shell .gizmo-text-composer{display:none}
.gizmo-current-response .today-brief-link{margin:8px 0 0;background:transparent;border:0;box-shadow:none}
.gizmo-current-response .today-brief-link button{min-height:40px;border:1px solid #d8a9b6;border-radius:999px;padding:8px 13px;background:#fff1f2;color:#7a1231;font-weight:750}
@keyframes gizmo-breathe{50%{transform:scale(.94);opacity:.78}}
@media(max-height:700px){.gizmo-shell{padding-top:calc(64px + env(safe-area-inset-top));grid-template-rows:minmax(120px,1fr) auto auto}.gizmo-shell .gizmo-waveform{height:110px}.gizmo-shell .gizmo-current-response{max-height:15vh}.gizmo-shell .gizmo-primary-voice-control{width:66px;height:66px;margin-bottom:10px}}
@media(min-width:720px){.gizmo-shell{padding-inline:max(40px,8vw)}.gizmo-shell .conversation-welcome{padding-top:clamp(18px,8vh,72px)}.gizmo-shell .gizmo-primary-voice-control{width:86px;height:86px}}
@media(prefers-reduced-motion:reduce){.gizmo-shell *{animation:none!important;transition:none!important}.gizmo-shell .gizmo-waveform{height:100px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.16),transparent)}}

/* Gizmo character and hands-free voice home */
.assistant-home.gizmo-shell{grid-template-rows:minmax(240px,1fr) minmax(0,auto) auto}
.gizmo-character{position:relative;align-self:center;justify-self:center;width:min(76vw,330px);aspect-ratio:1;border:0;border-radius:50%;padding:0;background:transparent;color:#fff;cursor:pointer;isolation:isolate;-webkit-tap-highlight-color:transparent}
.gizmo-character:focus-visible{outline:3px solid #fff4ee;outline-offset:8px}
.gizmo-character-halo{position:absolute;inset:2%;z-index:-1;border-radius:50%;background:radial-gradient(circle,rgba(255,191,199,.26),rgba(255,114,142,.09) 52%,transparent 72%);filter:blur(5px);transform:scale(1.08);transition:opacity .35s ease,transform .35s ease}
.gizmo-character-face{position:absolute;inset:5%;border-radius:50%;background:url("../images/gizmo-friendly-face.png") center/cover no-repeat;box-shadow:0 28px 70px rgba(20,0,8,.3);transition:transform .3s ease,filter .3s ease,box-shadow .3s ease}
.gizmo-character .gizmo-waveform{position:absolute;z-index:2;top:72%;left:50%;width:38%;height:clamp(38px,14%,50px);margin:0;transform:translate(-50%,-50%);overflow:visible;filter:drop-shadow(0 1px 2px rgba(69,13,35,.72)) drop-shadow(0 0 3px rgba(212,123,141,.28))}
.gizmo-shell[data-expression="listening"] .gizmo-character-halo{opacity:1;transform:scale(1.16)}
.gizmo-shell[data-expression="listening"] .gizmo-character-face{filter:brightness(1.05) saturate(1.04);box-shadow:0 24px 74px rgba(255,127,151,.2)}
.gizmo-shell[data-expression="thinking"] .gizmo-character-face{transform:translateY(-2px) rotate(-.6deg)}
.gizmo-shell[data-expression="pleased"] .gizmo-character-face{transform:scale(1.015);filter:brightness(1.06)}
.gizmo-shell[data-expression="error"] .gizmo-character-face{filter:saturate(.82) brightness(.94)}
.gizmo-shell[data-expression="paused"] .gizmo-character-face{filter:saturate(.82) brightness(.88)}
.gizmo-shell .status-text{font-size:12px;letter-spacing:.15em;text-transform:uppercase}
.chat-selection-card.is-resolved{border-color:#d7c3c8;background:#f8eff0}
.chat-selection-card.is-resolved button{white-space:normal;overflow-wrap:anywhere}
.gizmo-shell[data-interface-mode="text"]{height:var(--gizmo-viewport-height,100dvh);max-height:var(--gizmo-viewport-height,100dvh);min-height:0;grid-template-rows:auto minmax(0,1fr) auto;padding:calc(68px + env(safe-area-inset-top)) 0 0;background:#fff8f5;color:#2a0b14;overflow:hidden}
.gizmo-shell[data-interface-mode="text"] .gizmo-character,.gizmo-shell[data-interface-mode="text"] .gizmo-bottom-toolbar,.gizmo-shell[data-interface-mode="text"] .status-text,.gizmo-shell[data-interface-mode="text"] .voice-warning{display:none}
.gizmo-shell[data-interface-mode="text"] .gizmo-text-header{display:flex;grid-row:1;align-items:center;justify-content:space-between;gap:14px;padding:14px 16px;border-bottom:1px solid #ecd8dc;background:#fff8f5}
.gizmo-text-heading{min-width:0}.gizmo-text-header-actions{display:flex;align-items:center;justify-content:flex-end;gap:7px;flex-wrap:wrap}.gizmo-clear-conversation{min-height:38px;border:0;background:transparent;color:#8b2945;font-weight:750}
.gizmo-text-header div span{color:#8b2945;font-size:11px;font-weight:850;letter-spacing:.15em}
.gizmo-text-header h1{margin:2px 0 0;font-size:23px}
.text-mode-voice-return{min-height:44px;border:1px solid #d8a9b6;border-radius:999px;padding:0 14px;background:#fff;color:#7a1231;font-weight:800}
.gizmo-shell[data-interface-mode="text"] .gizmo-current-response{display:block;grid-row:2;width:100%;max-width:760px;height:100%;min-height:0;max-height:none;margin:0 auto;padding:16px max(16px,env(safe-area-inset-right)) 18px max(16px,env(safe-area-inset-left));overflow-x:hidden;overflow-y:auto;-webkit-overflow-scrolling:touch;scroll-padding-block:16px 18px;text-align:left;color:#2a0b14;overscroll-behavior-y:contain;touch-action:pan-y}
.gizmo-current-response.text-mode .message{position:relative;display:block;width:fit-content;max-width:88%;min-width:0;height:auto;min-height:0;margin:0 0 10px;padding:11px 13px;border:0;border-radius:18px;background:#f1e3e4;box-shadow:none;overflow:visible}
.gizmo-current-response.text-mode .message.user{margin-left:auto;background:#7a1231;color:#fff}
.gizmo-current-response.text-mode .message span{display:block;margin-bottom:3px;color:inherit;font-size:11px;font-weight:800;opacity:.62}
.gizmo-current-response.text-mode .message p{margin:0;white-space:pre-wrap;line-height:1.5;overflow-wrap:anywhere;word-break:break-word}
.gizmo-current-response.text-mode .assistant-card,.gizmo-current-response.text-mode .today-brief-link{position:static;display:block;clear:both;width:fit-content;max-width:100%;height:auto;margin:8px 0 14px;overflow:visible}
.gizmo-current-response.text-mode a,.gizmo-current-response.text-mode button{overflow-wrap:anywhere}
.gizmo-shell[data-interface-mode="text"] .gizmo-voice-controls{display:contents}
.gizmo-shell[data-interface-mode="text"] .gizmo-text-composer{position:relative;z-index:3;grid-row:3;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:8px;width:100%;margin:0;padding:10px max(12px,env(safe-area-inset-right)) calc(10px + env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left));border-top:1px solid #ecd8dc;background:#fff8f5}
.conversation-browser{display:grid;grid-template-rows:auto auto auto minmax(0,1fr);gap:10px;min-height:0;height:calc(100% - 68px);padding:0 14px 18px}.conversation-new{width:100%;min-height:46px;border:0;border-radius:14px;background:#7a1231;color:#fff;font-weight:800}.conversation-search input{width:100%;min-height:44px;border:1px solid #dfc6cc;border-radius:14px;padding:9px 12px;background:#fff;color:#2a0b14;font:inherit}.conversation-browser-status{margin:0;color:#75535c;font-size:12px}.conversation-list{display:grid;align-content:start;gap:7px;min-height:0;overflow-y:auto}.conversation-list-item{display:block;width:100%;min-height:58px;border:1px solid #eadadd;border-radius:14px;padding:10px 12px;background:#fff;text-align:left;color:#2a0b14}.conversation-list-item.is-active{border-color:#7a1231;background:#fff1f2}.conversation-list-item strong,.conversation-list-item span{display:block;overflow:hidden;text-overflow:ellipsis}.conversation-list-item strong{white-space:nowrap}.conversation-list-item span{margin-top:4px;color:#85646d;font-size:11px}
.gizmo-text-composer textarea{display:block;width:100%;min-width:0;min-height:46px;max-height:min(32dvh,12rem);margin:0;padding:11px 12px;border:1px solid #dfc6cc;border-radius:16px;background:#fff;color:#2a0b14;font-size:16px;line-height:1.4;resize:none;overflow-y:hidden;overscroll-behavior:contain}
.gizmo-text-composer textarea.is-scrollable{overflow-y:auto;-webkit-overflow-scrolling:touch}
.gizmo-text-composer textarea::placeholder{color:#916f78}
.gizmo-text-composer input[type="file"],.gizmo-text-composer label.sr-only{position:absolute!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;border:0!important;overflow:hidden!important;clip:rect(0 0 0 0)!important;clip-path:inset(50%)!important;white-space:nowrap!important}
.gizmo-text-composer button{min-height:46px;border:0;border-radius:15px;padding:0 17px;background:#7a1231;color:#fff;font-weight:800}
.gizmo-text-composer .attachment-controls,.gizmo-text-composer .attachment-preview-list,.gizmo-text-composer .attachment-send-status{grid-column:1 / -1}
.attachment-send-status{margin:0;padding:7px 10px;border-radius:10px;background:#fff0f0;color:#8a1735;font-size:12px;line-height:1.35}
.attachment-send-status.is-success{background:#edf9f1;color:#176338}
.attachment-menu-toggle{display:none}
.attachment-controls{display:flex;flex-wrap:wrap;gap:7px}
.gizmo-text-composer .attachment-controls button{min-height:36px;padding:0 12px;border:1px solid #d8a9b6;background:#fff;color:#7a1231}
.attachment-preview-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:8px}
.attachment-preview-item{display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:8px;min-width:0;padding:7px;border:1px solid #eadadd;border-radius:13px;background:#fff}
.attachment-preview-item>img{width:42px;height:42px;border-radius:9px;object-fit:cover}
.attachment-preview-item>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}
.gizmo-text-composer .attachment-preview-item>button{min-height:34px;padding:0 9px;background:#f3e7ea;color:#7a1231;font-size:11px}
.message-attachments{display:grid;gap:7px;margin-top:9px}
.message-attachment{display:grid;gap:5px;max-width:320px;padding:7px;border:1px solid rgba(122,18,49,.22);border-radius:12px;background:rgba(255,255,255,.88);color:#5f142d;text-decoration:none}
.message-attachment img{display:block;width:min(100%,280px);max-height:260px;border-radius:9px;object-fit:contain;background:#f7eef0}
.message-attachment span{margin:0!important;color:inherit!important;font-size:11px!important;opacity:.84!important;overflow-wrap:anywhere}
.message.is-retryable-error{border-color:rgba(217,139,43,.65)}
.attachment-turn-retry{margin-top:.55rem;min-height:2.5rem;padding:.45rem .8rem;border-radius:.65rem}
@media(max-width:600px){
  .gizmo-shell[data-interface-mode="text"] .gizmo-text-composer{grid-template-columns:46px minmax(0,1fr) auto;gap:7px;padding-bottom:calc(8px + env(safe-area-inset-bottom))}
  .gizmo-text-composer .attachment-menu-toggle{display:block;grid-column:1;grid-row:3;width:46px;padding:0;border:1px solid #d8a9b6;background:#fff;color:#7a1231;font-size:27px;font-weight:500;line-height:1}
  .gizmo-text-composer textarea{grid-column:2;grid-row:3}
  .gizmo-text-composer .composer-send{grid-column:3;grid-row:3;padding-inline:13px}
  .gizmo-text-composer .attachment-preview-list{grid-column:1 / -1;grid-row:1}
  .gizmo-text-composer .attachment-send-status{grid-column:1 / -1;grid-row:2}
  .gizmo-text-composer .attachment-controls{position:absolute;z-index:8;left:max(12px,env(safe-area-inset-left));bottom:calc(64px + env(safe-area-inset-bottom));display:none;grid-template-columns:1fr;min-width:150px;padding:7px;border:1px solid #dfc6cc;border-radius:14px;background:#fff;box-shadow:0 10px 28px rgba(42,11,20,.2)}
  .gizmo-text-composer .attachment-controls.is-open{display:grid}
  .gizmo-text-composer .attachment-controls button{justify-content:flex-start;min-height:42px;text-align:left}
}
.conversation-jump-latest{position:absolute;z-index:6;left:50%;bottom:calc(78px + env(safe-area-inset-bottom));min-height:38px;border:1px solid #d8a9b6;border-radius:999px;padding:7px 13px;background:#fff;color:#7a1231;font:inherit;font-size:13px;font-weight:800;box-shadow:0 8px 24px rgba(42,11,20,.18);transform:translateX(-50%)}
.gizmo-shell:not([data-interface-mode="text"]) .conversation-jump-latest{display:none}
@media(max-height:700px){.gizmo-character{width:min(58vw,245px)}.gizmo-character-face{inset:12%}.gizmo-character .gizmo-waveform{top:72%;width:38%;height:40px}.assistant-home.gizmo-shell{grid-template-rows:minmax(170px,1fr) minmax(0,auto) auto}.assistant-home.gizmo-shell[data-interface-mode="text"]{grid-template-rows:auto minmax(0,1fr) auto}}
@media(min-width:720px){.gizmo-character{width:min(42vh,360px)}}
@media(prefers-reduced-motion:reduce){.gizmo-character-halo,.gizmo-character-face{animation:none!important;transition:none!important}.gizmo-character .gizmo-waveform{height:56px;background:transparent}}
.gizmo-job-progress{width:min(100%,620px);border-color:#99f6e4;background:#f0fdfa}.gizmo-job-progress span{color:#0f766e}.gizmo-job-progress p{font-variant-numeric:tabular-nums;line-height:1.65}.gizmo-job-progress[data-job-status="needs_attention"],.gizmo-job-progress[data-job-status="failed"]{border-color:#fdba74;background:#fff7ed}.gizmo-job-progress[data-job-status="approval_required"]{border-color:#c4b5fd;background:#f5f3ff}

.secure-attention-dialog{max-width:min(90vw,440px);max-height:85dvh;overflow-y:auto;border-radius:16px;padding:20px}.secure-attention-dialog::backdrop{background:#0009}.secure-attention-dialog input{width:100%;box-sizing:border-box;margin:12px 0;padding:12px}.secure-attention-dialog button{padding:12px;margin:6px 4px 0 0}
