:root{--navy: #00173c;--navy-ink: #cadcfc;--bg: #f6f8fb;--card: #ffffff;--ink: #1b1f24;--muted: #6b7280;--line: #e5e7eb;--accent: #0056f7;--today: #fff7e6;--error: #b42318;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-size:16px;color:var(--ink)}*{box-sizing:border-box}body{margin:0;background:var(--bg)}button{font:inherit}.shell{min-height:100dvh;display:flex;flex-direction:column}.topbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 16px;background:var(--navy);color:#fff;position:sticky;top:0;z-index:5}.brand{display:flex;align-items:center;flex-wrap:wrap;gap:4px 0;font-weight:700;letter-spacing:.02em}.who{display:flex;gap:10px;align-items:baseline;font-size:14px;color:var(--navy-ink)}.topbar .linklike{color:#fff}.topbar .muted{color:var(--navy-ink)}.content{flex:1;width:100%;max-width:640px;margin:0 auto;padding:16px}.foot{display:flex;flex-direction:column;gap:4px;align-items:center;text-align:center;font-size:12px;color:var(--muted);padding:16px}.foot .tagline{color:var(--navy);font-weight:600;letter-spacing:.04em;text-transform:uppercase;font-size:11px}.card{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:20px}h1{font-size:22px;margin:0 0 6px}.muted{color:var(--muted)}.error{color:var(--error)}.linklike{background:none;border:none;color:var(--accent);padding:0;cursor:pointer;text-decoration:underline}.search{width:100%;padding:12px 14px;font-size:17px;border:1px solid var(--line);border-radius:10px;margin:12px 0}.picklist{list-style:none;margin:0;padding:0;max-height:60dvh;overflow:auto}.picklist li button{width:100%;display:flex;justify-content:space-between;align-items:center;padding:12px 10px;background:none;border:none;border-top:1px solid var(--line);text-align:left;cursor:pointer}.picklist li button:hover{background:var(--bg)}.picklist .name{font-weight:500}.picklist .abbr{color:var(--muted);font-size:13px}.monthnav{display:flex;align-items:center;justify-content:space-between;margin:4px 0 8px}.monthnav h1{font-size:20px;margin:0}.monthnav button{width:44px;height:44px;border-radius:22px;border:1px solid var(--line);background:var(--card);font-size:22px;cursor:pointer}.summary{color:var(--muted);margin:0 0 12px;font-size:14px}.days{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.day{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:12px 14px}.day.today{background:var(--today);border-color:#f2c76c}.dayhead{display:flex;gap:10px;align-items:baseline;margin-bottom:8px}.dayhead .weekday{font-weight:700;text-transform:uppercase;font-size:12px;color:var(--muted);letter-spacing:.06em}.dayhead .date{font-weight:600}.shifts{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.shift{display:flex;flex-wrap:wrap;gap:6px 10px;align-items:center;font-size:15px}.shift .slot{white-space:nowrap}.shift .hours{margin-left:auto}.site{font-size:12px;font-weight:600;padding:3px 8px;border-radius:999px;background:#e8eefc;color:#1f3d8a;white-space:nowrap}.site-randolph{background:#e8eefc;color:#1f3d8a}.site-asante{background:#e6f5ec;color:#1b6b3a}.site-mcleod-manning{background:#fdeee6;color:#9a3f0f}.site-vista{background:#f1e8fb;color:#5b2a9e}.site-deaconess-midtown-gateway,.site-deaconess-henderson,.site-deaconess-memorial-jasper,.site-deaconess-transfer-center{background:#eef2f3;color:#2f4858}.slot{font-weight:500}.hours{color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap}.brandbtn{display:flex;align-items:center;gap:10px;background:none;border:none;font-weight:700;font-size:16px;padding:0;cursor:pointer;color:#fff}.mark{height:26px;width:auto;display:block}.wordmark{font-weight:600;font-size:18px;letter-spacing:-.01em;color:#fff}.product.where{white-space:nowrap;font-weight:500;color:var(--navy-ink);padding-left:10px;border-left:1px solid rgba(255,255,255,.25)}.content.wide{max-width:none;padding:12px 16px}.adminname{border:1px solid rgba(255,255,255,.25);background:#ffffff14;color:#fff;border-radius:8px;padding:6px 8px;font-size:14px;width:160px}.adminname::placeholder{color:var(--navy-ink)}.pill{display:inline-block;font-size:12px;padding:2px 8px;border-radius:999px;background:#eef2f3;color:#2f4858;margin-right:6px}.pill.tiny{font-size:10px;padding:1px 6px;margin-left:6px}.pill.warn,.warn{color:#8a5a00}.status-published{background:#e6f5ec;color:#1b6b3a}.status-finalized{background:#e8eefc;color:#1f3d8a}.status-draft{background:#f3f4f6;color:#4b5563}.letter{display:inline-block;min-width:20px;text-align:center;font-weight:700;font-size:12px;padding:1px 5px;border-radius:6px;margin-right:4px}button.primary{background:var(--accent);color:#fff;border:none;border-radius:8px;padding:8px 14px;cursor:pointer}button.primary:disabled{background:#b9c6df;color:#fff;cursor:default}button.danger{color:var(--error)}.small{font-size:12px}.toast{background:#e6f5ec;color:#1b6b3a;border-radius:8px;padding:8px 12px;cursor:pointer}.gridtools{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-bottom:8px}.quarterpicker{display:flex;align-items:center;gap:8px}.quarterpicker h1{font-size:20px;margin:0;min-width:90px;text-align:center}.quarterpicker button{width:34px;height:34px;border-radius:17px;border:1px solid var(--line);background:var(--card);font-size:18px;cursor:pointer}.gridscroll{overflow:auto;border:1px solid var(--line);border-radius:10px;background:var(--card);max-height:calc(100dvh - 190px)}table.grid{border-collapse:separate;border-spacing:0;font-size:13px;min-width:100%}table.grid th,table.grid td{border-bottom:1px solid var(--line);border-right:1px solid #f0f1f3;padding:4px 6px;white-space:nowrap;text-align:left;vertical-align:middle}table.grid thead th{position:sticky;top:0;background:#fafbfc;z-index:2}table.grid th.week{text-align:center;min-width:64px}.wk-days{font-weight:600}.wk-month{font-size:11px;color:var(--muted);font-weight:400}table.grid .sticky{position:sticky;left:0;background:var(--card);z-index:1}table.grid thead .sticky{z-index:3}table.grid th.name{min-width:170px;font-weight:500}table.grid td.cell{text-align:center}table.grid td.notes{white-space:normal;min-width:260px;max-width:420px;font-size:12px;color:var(--muted)}table.grid tfoot .foot-head th{background:#fafbfc;font-weight:700;padding-top:10px}.chip{display:inline-block;border:none;border-radius:6px;padding:2px 6px;margin:1px;font-weight:700;font-size:12px;cursor:pointer}.chip.partial{opacity:.55;font-weight:500}.cov{border:none;border-radius:6px;padding:2px 6px;font-size:12px;font-variant-numeric:tabular-nums;cursor:pointer;background:#f3f4f6}.cov.ok{background:#e6f5ec;color:#1b6b3a}.cov.short{background:#fff4e5;color:#8a5a00}.cov.open{background:#fdecea;color:#9a1b1b}.openbadge{margin-left:4px;background:#9a1b1b;color:#fff;border-radius:999px;padding:0 5px;font-size:10px}.status{margin-left:6px;font-size:10px;color:var(--muted);text-transform:uppercase}.legend{font-size:12px;margin:10px 0}.crumbs{margin-bottom:6px}.weekhead h1{font-size:20px;margin:0 0 6px}.weekhead .chips{margin-bottom:10px}.flags{background:var(--card);border:1px solid var(--line);border-radius:10px;padding:8px 12px;margin-bottom:12px}.flags summary{cursor:pointer;font-weight:600}.flags ul{margin:8px 0 0;padding-left:18px;font-size:14px}.err{color:var(--error)}.ok{color:#1b6b3a}.weekpage .days{max-width:900px}.shifts-table{width:100%;border-collapse:collapse}.shifts-table td{padding:5px 6px;border-top:1px solid #f0f1f3;font-size:14px;vertical-align:middle}.shifts-table td.slot{font-weight:500;width:130px}.shifts-table td.hours{color:var(--muted);width:140px;white-space:nowrap}.shifts-table td.actions{text-align:right;white-space:nowrap}.shifts-table td.actions button{background:none;border:1px solid var(--line);border-radius:6px;padding:3px 8px;margin-left:4px;cursor:pointer;font-size:12px}.open-row td.who em{color:#9a1b1b}.history ul{list-style:none;padding:0}.history li{border-top:1px solid var(--line);padding:8px 0;font-size:14px}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000059;display:flex;align-items:center;justify-content:center;padding:16px;z-index:10}.modal{background:var(--card);border-radius:12px;padding:20px;width:100%;max-width:560px;max-height:90dvh;overflow:auto}.modal h2{margin:0 0 8px;font-size:18px}.modal label{display:block;margin:10px 0 4px;font-size:14px}.modal input[type=text],.modal input:not([type]),.modal select,.modal input[type=time]{width:100%;padding:8px 10px;border:1px solid var(--line);border-radius:8px;font-size:15px;margin-top:4px}.modal input[type=time],.modal select{width:auto}.times{display:flex;gap:14px;align-items:end;flex-wrap:wrap}.times label{margin:4px 0}.modal-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:14px}.modal-actions button{padding:8px 14px;border-radius:8px;border:1px solid var(--line);background:var(--card);cursor:pointer}.modal-actions button.primary{background:var(--accent);color:#fff;border-color:var(--accent)}.modal-actions button.primary:disabled{background:#b9c6df;border-color:#b9c6df;cursor:default}.cands{list-style:none;padding:0;margin:6px 0;max-height:40dvh;overflow:auto;border:1px solid var(--line);border-radius:8px}.cands li{padding:6px 10px;border-top:1px solid #f0f1f3;font-size:14px}.cands li.blocked{color:var(--muted)}.cands label{display:block;margin:0}.why{display:inline-block;font-size:11px;margin-left:8px;padding:1px 6px;border-radius:6px;background:#fff4e5}.why.err{background:#fdecea}.introduced{background:#fdecea;border-radius:8px;padding:10px 12px;margin-top:10px;font-size:14px}.introduced ul{margin:6px 0;padding-left:18px}.tabs{display:inline-flex;flex-wrap:wrap;gap:4px;margin-left:18px;vertical-align:middle}.tab{background:none;border:1px solid transparent;border-radius:999px;padding:4px 12px;font-size:14px;color:var(--muted);cursor:pointer;white-space:nowrap}.tab.active{background:#e8eefc;color:#1f3d8a;font-weight:600}.topbar .tab{color:var(--navy-ink)}.topbar .tab:hover{color:#fff}.topbar .tab.active{background:#ffffff24;color:#fff}.reqpage .tabs,.reqadmin .tabs{margin:0 0 10px}.notice{background:#fff7e6;border:1px solid #f2c76c;border-radius:8px;padding:8px 12px;font-size:14px}.weeks{list-style:none;margin:12px 0;padding:0;display:flex;flex-direction:column;gap:8px}.week-row{display:flex;align-items:center;justify-content:space-between;gap:10px;background:var(--card);border:1px solid var(--line);border-radius:12px;padding:10px 14px}.week-row.want{border-color:#9fd3b4;background:#f2faf5}.week-row.blackout{border-color:#e9b4b4;background:#fdf3f3}.week-label{display:flex;flex-direction:column}.week-dates{font-weight:600}.choice{display:inline-flex;border:1px solid var(--line);border-radius:999px;overflow:hidden;flex-shrink:0}.choice button{background:var(--card);border:none;padding:8px 12px;font-size:14px;cursor:pointer;color:var(--muted);min-width:60px}.choice button+button{border-left:1px solid var(--line)}.choice button.on{background:#e8eefc;color:#1f3d8a;font-weight:600}.choice button.on.want{background:#e6f5ec;color:#1b6b3a}.choice button.on.blackout{background:#fdecea;color:#9a1b1b}.choice button:disabled{cursor:default}.field{display:block;margin:10px 0;font-size:14px}.field>span{display:block;margin-bottom:4px}.field input,.field textarea{width:100%;padding:8px 10px;border:1px solid var(--line);border-radius:8px;font:inherit;font-size:15px}.field input[type=number],.field input[type=date]{width:auto}.formactions{display:flex;align-items:center;gap:12px;margin-top:8px}.reqpage .card+.weeks,.reqpage .weeks+.card{margin-top:12px}.windowcard{margin-bottom:12px}.windowcard h2{font-size:16px;margin:0 0 6px}.windowform{display:flex;gap:14px;align-items:end;flex-wrap:wrap}.windowform .field{margin:6px 0}.windowform .field.grow{flex:1;min-width:260px}table.grid tr.missing th.name{color:var(--muted)}table.grid td.mark{text-align:center;font-weight:700}table.grid td.mark.want{background:#e6f5ec;color:#1b6b3a}table.grid td.mark.blackout{background:#fdecea;color:#9a1b1b}.tally.want{color:#1b6b3a;font-weight:600}.tally.blackout{color:#9a1b1b;font-weight:600}.filter{display:block;font-weight:400;margin-top:4px}.filter input{margin-right:4px}table.grid td.cell.want{background:#f2faf5;box-shadow:inset 0 0 0 1px #cfe9d9}table.grid td.cell.blackout{background:repeating-linear-gradient(135deg,#fdf3f3,#fdf3f3 4px,#f6e3e3 4px,#f6e3e3 8px)}.reqnote{color:var(--ink)}.swatch{display:inline-block;width:12px;height:12px;border-radius:3px;vertical-align:middle;border:1px solid var(--line)}.swatch.want{background:#f2faf5;border-color:#cfe9d9}.swatch.blackout{background:repeating-linear-gradient(135deg,#fdf3f3,#fdf3f3 3px,#f6e3e3 3px,#f6e3e3 6px)}.login{max-width:420px;margin:24px auto}.loginbrand{display:flex;flex-direction:column;align-items:center;gap:6px;margin:0 0 18px;padding:18px 0 14px;background:var(--navy);border-radius:10px}.loginbrand img{height:54px;width:auto}.loginbrand .wordmark{font-size:26px}.loginbrand .muted{color:var(--navy-ink);letter-spacing:.06em;text-transform:uppercase;font-size:11px}.login form{display:flex;flex-direction:column;gap:4px}.login .primary{align-self:flex-start;margin-top:6px}.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px;margin:8px 0 16px}.sitecard{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:12px 14px;display:flex;flex-direction:column;gap:8px;border-top:4px solid var(--line)}.sitecard.tone-ok{border-top-color:#9fd3b4}.sitecard.tone-open{border-top-color:#e9b4b4}.sitecard.tone-err{border-top-color:#b42318}.sitecard header{display:flex;align-items:center;gap:8px}.sitecard header .name{font-weight:600;font-size:15px;text-decoration:none;color:var(--ink)}.sitecard header .pill{margin-left:auto}.sitecard .stats{display:flex;gap:10px;font-size:13px}.onduty{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:3px;font-size:13px}.onduty li{display:flex;gap:8px;align-items:baseline}.onduty .slot{color:var(--muted);min-width:90px}.onduty .hours{margin-left:auto}.sitecard footer{display:flex;gap:12px;margin-top:auto;padding-top:4px}.dash-cols{display:grid;grid-template-columns:3fr 2fr;gap:12px}@media (max-width: 900px){.dash-cols{grid-template-columns:1fr}}.dash .card h2{font-size:16px;margin:0 0 8px}.attn{display:flex;gap:10px;align-items:flex-start;width:100%;text-align:left;background:none;border:none;border-top:1px solid #f0f1f3;padding:8px 0;font:inherit;font-size:14px;color:var(--ink);cursor:pointer}div.attn{cursor:default}.dot{flex-shrink:0;width:10px;height:10px;border-radius:5px;margin-top:5px;background:var(--muted)}.dot.ok{background:#1b6b3a}.dot.warn{background:#c98a00}.dot.err{background:#b42318}.dot.info{background:var(--accent)}.recent{list-style:none;margin:0;padding:0}.recent li{border-top:1px solid #f0f1f3;padding:6px 0;font-size:14px}.recent .linklike{text-decoration:none;color:var(--ink);text-align:left}.section{font-size:15px;margin:16px 0 6px;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}.field.inline{display:inline-flex;gap:8px;align-items:center;margin:0}.field.inline select{padding:6px 8px;border:1px solid var(--line);border-radius:8px;font:inherit}table.grid.month td{white-space:normal;min-width:130px;vertical-align:top}table.grid.month td.empty{background:#fdf3f3}table.grid.month tr.handoff th,table.grid.month tr.handoff td{border-top:2px solid #c7d2ea}table.grid.month .wd{display:inline-block;width:32px;color:var(--muted);font-size:12px;text-transform:uppercase}.cellname{display:block;text-decoration:none;color:var(--ink);text-align:left;font-size:13px;padding:1px 0}.cellname .hours{font-size:11px}.printonly{display:none}@media print{.topbar,.foot,.noprint{display:none!important}.printonly{display:block}.content.wide{padding:0}.gridscroll{max-height:none;border:none;overflow:visible}table.grid th,table.grid td{font-size:11px;padding:2px 4px}.cellname{font-size:11px}}.pill.st-scheduled{background:#fff4e5;color:#8a5a00}.pill.st-confirmed{background:#e8eefc;color:#1f3d8a}.pill.st-approved{background:#e6f5ec;color:#1b6b3a}table.grid.sheets td.num{text-align:right;font-variant-numeric:tabular-nums}table.grid.sheets td.actions button{background:none;border:1px solid var(--line);border-radius:6px;padding:3px 8px;margin-left:4px;cursor:pointer;font-size:12px}table.grid.sheets tr.detail td{background:#fafbfc;white-space:normal}table.hours{border-collapse:collapse;font-size:13px;width:100%;max-width:860px}table.hours th,table.hours td{border-bottom:1px solid var(--line);padding:4px 8px;text-align:left;vertical-align:middle}table.hours td.num,table.hours th:nth-child(n+2):nth-child(-n+5){text-align:right;font-variant-numeric:tabular-nums}table.hours td.notes{color:var(--muted);font-size:12px}table.hours.edit input[type=number]{width:64px;padding:4px 6px;border:1px solid var(--line);border-radius:6px;font:inherit;text-align:right}table.hours.edit input[type=text]{width:100%;min-width:180px;padding:4px 6px;border:1px solid var(--line);border-radius:6px;font:inherit;font-size:13px}table.hours.edit input.changed{border-color:#c98a00;background:#fff7e6}.tours{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.tour{background:var(--card);border:1px solid var(--line);border-radius:12px;overflow:hidden}.tourhead{display:flex;align-items:center;gap:10px;width:100%;padding:12px 14px;background:none;border:none;font:inherit;text-align:left;cursor:pointer}.tourhead.static{cursor:default}.tourname{flex:1;font-weight:500}.tour .hours{color:var(--ink)}.confirm{padding:0 14px 14px;border-top:1px solid var(--line);overflow-x:auto}.confirm .daycell{white-space:nowrap}.confirm-foot{display:flex;flex-direction:column;gap:6px;margin-top:10px}.mysheets .card h1{font-size:20px}.more{display:block;padding:6px 0 2px 20px}.week-row.locked{background:#f3f4f6;border-color:#d9dce1}.lockinfo{display:flex;flex-direction:column;align-items:flex-end;gap:2px}.week-row select.reason{margin-left:8px;padding:6px 8px;border:1px solid #e9b4b4;border-radius:8px;font:inherit;font-size:13px;background:#fff;max-width:190px}.week-row{flex-wrap:wrap}.history summary{cursor:pointer;color:var(--muted)}.logi-cols{display:grid;grid-template-columns:3fr 2fr;gap:12px;align-items:start}@media (max-width: 1000px){.logi-cols{grid-template-columns:1fr}}.logi-main,.logi-side{display:flex;flex-direction:column;gap:12px}.card.logi h2{font-size:16px;margin:0 0 8px;display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}.card.logi h3{font-size:13px;margin:12px 0 4px;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}.card.logi p{margin:4px 0}.card.logi.inactive{opacity:.6}.people{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px;font-size:14px}.people li{display:flex;gap:8px;align-items:baseline;flex-wrap:wrap}.people li button.small,.rooms button.small{font-size:12px;padding:2px 8px;border:1px solid var(--line);border-radius:6px;background:var(--card);cursor:pointer}table.plain{width:100%;border-collapse:collapse;font-size:14px}table.plain th{text-align:left;font-weight:600;font-size:12px;color:var(--muted);padding:4px 6px;border-bottom:1px solid var(--line)}table.plain td{padding:6px;border-bottom:1px solid #f0f1f3;vertical-align:top}.needs strong{color:#8a5a00}.residence+.residence{margin-top:8px}.rooms{list-style:none;margin:0;padding:0}.rooms>li{display:flex;gap:10px;align-items:flex-start;padding:6px 0;border-top:1px solid #f0f1f3;font-size:14px}.roomname{min-width:110px;font-weight:500}.occupants{list-style:none;margin:0;padding:0;flex:1;display:flex;flex-direction:column;gap:4px}.occupants li{display:flex;justify-content:space-between;gap:8px;align-items:center;flex-wrap:wrap}.occupants li.proposed{background:#fff7e6;border-radius:6px;padding:2px 6px;margin:0 -6px}.occupants button{font-size:12px;padding:2px 8px;border:1px solid var(--line);border-radius:6px;background:var(--card);cursor:pointer;margin-left:4px}.resinfo+.resinfo{margin-top:8px}pre.guide{white-space:pre-wrap;font:inherit;font-size:14px;margin:4px 0}.addroom{display:flex;gap:8px;margin-top:8px}.addroom input{flex:1;padding:6px 10px;border:1px solid var(--line);border-radius:8px;font:inherit}.addroom button{padding:6px 12px;border:1px solid var(--line);border-radius:8px;background:var(--card);cursor:pointer}.field select{padding:8px 10px;border:1px solid var(--line);border-radius:8px;font:inherit}.field.check input{width:auto;margin-right:6px}.guidebox{width:100%;padding:8px 10px;border:1px solid var(--line);border-radius:8px;font:inherit;font-size:14px}.formactions button:not(.primary){padding:8px 14px;border:1px solid var(--line);border-radius:8px;background:var(--card);cursor:pointer}.logistics .gridtools h1,.residences .gridtools h1{font-size:20px;margin:0}.residences .logi-main>button.primary{align-self:flex-start}table.plain td.when{white-space:nowrap}.yourweek{display:flex;flex-direction:column;gap:10px;margin-bottom:16px}.tourpage h1{margin-bottom:4px}.stintcard{padding:0}.stintcard.current{border-color:#f2c76c;background:#fffdf7}.stintcard>summary{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:14px 16px;cursor:pointer;font-size:15px;list-style:none}.stintcard>summary::-webkit-details-marker{display:none}.stintcard>summary:after{content:"›";margin-left:auto;color:var(--muted);font-size:20px;transform:rotate(90deg)}.stintcard[open]>summary:after{transform:rotate(-90deg)}.stintwhen{font-weight:500}.stintbody{padding:0 16px 14px;font-size:15px}.stintbody p{margin:6px 0}.stintbody details.guidebox{padding:6px 10px;margin:8px 0;background:var(--bg)}.stintbody details.guidebox summary{cursor:pointer;font-weight:500}.planform{margin-top:10px;border-top:1px solid var(--line);padding-top:8px}.planform>summary{cursor:pointer;font-weight:500;display:flex;gap:8px;align-items:baseline;flex-wrap:wrap}.planbody{padding-top:6px}.yesno{display:flex;justify-content:space-between;align-items:center;gap:10px;margin:10px 0 4px;font-size:14px}.yesno .choice button{min-width:52px;padding:6px 10px}.subfields{display:flex;gap:10px;flex-wrap:wrap;margin-left:10px;padding-left:10px;border-left:2px solid var(--line)}.subfields .field{margin:4px 0;flex:1;min-width:140px}.subfields .field input,.subfields .field select{width:100%}.flights{display:flex;flex-direction:column;gap:6px;margin:10px 0}.flightrow{display:grid;grid-template-columns:36px 1fr 1fr 1fr;gap:6px;align-items:center}.flightrow .leg{font-size:12px;color:var(--muted);text-transform:uppercase}.flightrow input{width:100%;padding:6px 8px;border:1px solid var(--line);border-radius:8px;font:inherit;font-size:14px;min-width:0}.callie-dock{position:fixed;right:16px;bottom:16px;z-index:20;display:flex;flex-direction:column;align-items:flex-end;gap:10px}.callie-dock .av{display:inline-grid;place-items:center;width:28px;height:28px;border-radius:50%;background:linear-gradient(135deg,#0a2ca4,#52b8ff);color:#fff;font-weight:800;font-size:13px;flex-shrink:0}.callie-fab{display:flex;align-items:center;gap:10px;padding:8px 14px 8px 8px;border:none;border-radius:999px;background:var(--navy);color:#fff;font:inherit;font-weight:600;cursor:pointer;box-shadow:0 10px 30px #00173c40}.callie-dock.open .callie-fab{padding:8px}.callie-panel{width:min(400px,calc(100vw - 32px));height:min(560px,calc(100dvh - 90px));background:var(--card);border:1px solid var(--line);border-radius:16px;box-shadow:0 24px 60px #00173c40;display:flex;flex-direction:column;overflow:hidden}.callie-panel header{display:flex;align-items:center;gap:10px;padding:12px 14px;border-bottom:1px solid var(--line)}.callie-panel header>div{flex:1}.callie-list{flex:1;overflow:auto;padding:14px;display:flex;flex-direction:column;gap:10px}.bubble{max-width:88%;padding:9px 12px;border-radius:14px;font-size:15px;line-height:1.45;white-space:pre-wrap}.bubble.from-me{align-self:flex-end;background:var(--accent);color:#fff;border-bottom-right-radius:4px}.bubble.from-callie{align-self:flex-start;background:var(--bg);color:var(--ink);border-bottom-left-radius:4px}.bubble.thinking{color:var(--muted);font-style:italic}.bubble .did{margin-top:6px;font-size:12px;color:#1b6b3a;font-weight:600}.callie-input{display:flex;gap:8px;padding:10px 12px;border-top:1px solid var(--line)}.callie-input input{flex:1;padding:9px 12px;border:1px solid var(--line);border-radius:10px;font:inherit;font-size:15px}.callie-foot{margin:0;padding:0 14px 10px;font-size:11px}.proposal{margin-top:8px;background:#fff;border:1px solid #c7d2ea;border-radius:12px;padding:10px 12px;font-size:14px}.proposal.applied{border-color:#9fd3b4;background:#f2faf5}.proposal.dismissed,.proposal.failed{opacity:.75}.proposal-head{display:flex;gap:8px;align-items:baseline;flex-wrap:wrap}.proposal-errors{margin:6px 0;padding-left:18px;color:var(--error);font-size:13px}.proposal .field{margin:6px 0}.proposal .field input{padding:6px 8px;font-size:14px}.proposal .formactions{margin-top:6px;gap:8px}.proposal .formactions button:not(.primary){padding:6px 10px}.proposal .formactions button.primary{padding:6px 12px}@media print{.callie-dock{display:none}}.callie-panel .voice-toggle{border:1px solid var(--line);background:var(--card);border-radius:999px;width:34px;height:34px;font-size:16px;cursor:pointer;line-height:1;opacity:.55}.callie-panel .voice-toggle.on{opacity:1}.callie-panel .voice-toggle.speaking{box-shadow:0 0 0 4px #0056f72e;animation:callie-pulse 1.2s ease-in-out infinite}.callie-input .mic{border:1px solid var(--line);background:var(--card);border-radius:10px;width:42px;font-size:17px;cursor:pointer;line-height:1}.callie-input .mic.live{background:#fee2e2;border-color:#ef4444;animation:callie-pulse 1s ease-in-out infinite}@keyframes callie-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.08)}}@media (prefers-reduced-motion: reduce){.callie-panel .voice-toggle.speaking,.callie-input .mic.live{animation:none}}
