:root{--ink:#17181b;--paper:#f6f3ed;--card:#fffdf8;--line:#dcd6ca;--muted:#777167;--accent:#466756;--selector-domain:#284338;--selector-detail:#466756;--selector-management:#708779;--warn:#9a5c1d;--ok:#2f6a47;--shadow:0 16px 44px rgba(35,28,18,.08)}
*{box-sizing:border-box}html{background:var(--paper);color:var(--ink);font-family:Inter,Pretendard,"Noto Sans KR",system-ui,-apple-system,sans-serif}body{margin:0;min-height:100dvh;background:radial-gradient(circle at 90% 0%,rgba(70,103,86,.10),transparent 32rem),var(--paper)}button,textarea{font:inherit}.shell{width:min(720px,100%);margin:0 auto;padding:max(28px,env(safe-area-inset-top)) 20px max(40px,env(safe-area-inset-bottom))}.topbar{display:flex;justify-content:space-between;align-items:flex-start;margin:10px 2px 20px}.eyebrow{font-size:11px;font-weight:800;letter-spacing:.16em;color:var(--muted)}h1{font-size:clamp(34px,8vw,58px);line-height:1.02;letter-spacing:-.055em;margin:10px 0 0;font-weight:760}.tagline{font-size:14px;line-height:1.35;letter-spacing:.005em;margin:7px 0 0;font-weight:680;color:#45483f;white-space:nowrap}h2{font-size:22px;letter-spacing:-.035em;margin:5px 0 0}.status-dot{width:11px;height:11px;border-radius:50%;background:#58a172;box-shadow:0 0 0 4px rgba(88,161,114,.12);margin-top:4px}.status-dot.offline{background:#b46a54;box-shadow:0 0 0 4px rgba(180,106,84,.12)}.capture-card,.preview,.result{background:rgba(255,253,248,.92);border:1px solid rgba(220,214,202,.9);border-radius:28px;box-shadow:var(--shadow)}.capture-card{padding:22px}.input-label{display:block;font-weight:700;font-size:14px;margin-bottom:10px}textarea{width:100%;resize:none;border:0;outline:0;background:transparent;color:var(--ink);font-size:16px;line-height:1.55;letter-spacing:-.015em;min-height:108px;padding:4px 0}textarea::placeholder{color:#aaa49a}.capture-actions,.save-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:14px}button{border:0;border-radius:14px;cursor:pointer;transition:transform .12s ease,opacity .12s ease}button:active{transform:scale(.98)}button:disabled{opacity:.45;cursor:not-allowed}.primary{background:var(--ink);color:white;padding:13px 18px;font-weight:750}.ghost{background:#eee9df;color:var(--ink);padding:13px 16px;font-weight:700}.hint{font-size:12px;color:var(--muted);margin-top:12px}.examples{display:flex;gap:8px;overflow-x:auto;padding:14px 2px 4px;scrollbar-width:none}.examples::-webkit-scrollbar{display:none}.chip{white-space:nowrap;background:transparent;border:1px solid var(--line);padding:9px 12px;color:#5f5a52;font-size:13px}.preview{padding:22px;margin-top:22px}.preview-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.badge{font-size:12px;font-weight:800;padding:7px 10px;border-radius:999px;background:#eee9df;color:#554e43}.preview-grid{display:grid;grid-template-columns:110px 1fr;gap:11px 14px;margin:22px 0 0}.preview-grid dt{color:var(--muted);font-size:13px}.preview-grid dd{margin:0;font-size:15px;font-weight:650;overflow-wrap:anywhere}.warning,.duration-fix{margin-top:18px;border-radius:17px;padding:14px 15px;background:#fff3e5;border:1px solid #efd6b6;color:#70430f}.warning-title{font-weight:800}.warning-text{font-size:13px;line-height:1.5;margin-top:4px}.duration-buttons{display:flex;gap:8px;margin-top:12px}.duration-buttons button{background:#fff;border:1px solid #e6c9a6;padding:9px 12px;font-weight:700}.result{padding:18px 20px;margin-top:18px;font-size:14px;line-height:1.6}.result.ok{border-color:#b9d9c4;color:#244c35}.result.error{border-color:#ebc0b9;color:#7a3428}.spinner{display:inline-block;width:14px;height:14px;border:2px solid rgba(255,255,255,.35);border-top-color:white;border-radius:50%;animation:spin .7s linear infinite;vertical-align:-2px;margin-right:7px}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:520px){.shell{padding-left:14px;padding-right:14px;padding-top:max(18px,env(safe-area-inset-top))}.topbar{margin-top:4px;margin-bottom:16px}.tagline{font-size:12.5px}.capture-card,.preview{border-radius:22px}.capture-card{padding:18px}.preview-grid{grid-template-columns:92px 1fr}.capture-actions .primary,.save-actions .primary{flex:1}.save-actions{justify-content:stretch}.save-actions button{min-height:46px}}
.type-picker{margin:-4px 2px 16px}.type-picker-label{font-size:13px;font-weight:750;color:var(--muted);margin:0 0 9px 2px}.type-segments{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.type-segments button{background:rgba(255,253,248,.72);border:1px solid var(--line);padding:7px 10px;color:#5f5a52;font-size:12.5px;font-weight:700;white-space:nowrap;min-height:40px}.type-segments button.selected{background:var(--selector-domain);border-color:var(--selector-domain);color:#fff}.type-picker.attention{animation:nudge .28s ease 2}.type-picker.attention .type-picker-label{color:#8a421e}@keyframes nudge{50%{transform:translateX(3px)}}
.confirm-panel{margin-top:18px;border-radius:17px;padding:15px;background:#f3efe6;border:1px solid #d8d0c2;color:#40392f}.candidate-list{display:grid;gap:8px;margin-top:12px}.candidate{display:flex;align-items:flex-start;gap:10px;padding:11px 12px;border:1px solid #ddd4c5;border-radius:13px;background:#fffdf8;cursor:pointer}.candidate input{margin-top:3px;accent-color:var(--ink)}.candidate span{font-size:13px;line-height:1.45}.confirm-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:13px}.confirm-actions .primary,.confirm-actions .ghost{padding:11px 14px}
@media(max-width:520px){.type-segments{grid-template-columns:1fr 1fr}.type-segments button{min-height:40px}.confirm-actions{flex-direction:column}.confirm-actions button{width:100%;min-height:46px}}

.brand-by{font-weight:700;letter-spacing:.12em;color:#7d837d}.app-state{display:flex;align-items:center;gap:10px;margin-top:1px}.version-tag{font-size:11px;font-weight:750;letter-spacing:.06em;color:var(--muted);white-space:nowrap}.app-state .status-dot{margin-top:0}@media(max-width:520px){.version-tag{font-size:10px}.app-state{gap:8px}}

/* MOMENTA v1.2: second-stage context + person disambiguation */
.subtype-picker{margin:-6px 2px 16px}.subtype-segments{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.subtype-segments[data-domain="개인"]{grid-template-columns:repeat(4,minmax(0,1fr))}.subtype-segments button{background:rgba(255,253,248,.72);border:1px solid var(--line);padding:7px 8px;color:#5f5a52;font-size:12px;font-weight:700;white-space:nowrap;min-height:40px}.subtype-segments button.selected{background:var(--selector-detail);border-color:var(--selector-detail);color:#fff}.subtype-picker.attention{animation:nudge .28s ease 2}.subtype-picker.attention .type-picker-label{color:#8a421e}.person-confirm-list{display:grid;gap:14px;margin-top:13px}.person-block{padding-top:2px}.person-block+.person-block{border-top:1px solid #ddd4c5;padding-top:13px}.person-name{font-size:13px;font-weight:800;margin-bottom:8px}.person-options{display:grid;gap:7px}.person-choice{display:flex;align-items:flex-start;gap:10px;padding:10px 11px;border:1px solid #ddd4c5;border-radius:13px;background:#fffdf8;cursor:pointer}.person-choice:has(input:checked){border-color:#799987;box-shadow:0 0 0 2px rgba(70,103,86,.10);background:#fbfdf9}.person-choice input{margin-top:3px;accent-color:var(--accent)}.person-choice span{font-size:13px;line-height:1.42}.person-choice small{display:block;color:var(--muted);margin-top:2px}.person-choice.new-person{border-style:dashed}.place-source{font-size:11px;color:var(--ok);font-weight:700;margin-left:5px}.place-address{display:block;margin-top:4px;color:var(--muted);font-size:11.5px;font-weight:500;line-height:1.4}.place-map-link{font-size:11px;color:var(--accent);font-weight:750;margin-left:6px;text-decoration:underline;text-underline-offset:2px}
@media(max-width:520px){.subtype-segments{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.subtype-segments[data-domain="개인"]{grid-template-columns:repeat(4,minmax(0,1fr))}.subtype-segments button{min-height:40px;padding:7px 4px;font-size:11.5px}.person-choice{padding:11px}}

/* MOMENTA v1.3: domain × management + sequential follow-up */
.domain-segments{grid-template-columns:repeat(3,1fr)}
.management-picker{margin:-6px 2px 18px}.management-segments{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.management-segments button{background:rgba(255,253,248,.72);border:1px solid var(--line);padding:7px 10px;color:#5f5a52;font-size:12.5px;font-weight:750;min-height:40px}.management-segments button.selected{background:var(--selector-management);border-color:var(--selector-management);color:#fff}.management-picker.attention{animation:nudge .28s ease 2}.management-picker.attention .type-picker-label{color:#8a421e}.micro-hint{font-size:11.5px;color:var(--muted);line-height:1.5;margin:8px 2px 0}
.followup-panel{margin-top:18px;border:1px solid #cec5b5;background:linear-gradient(180deg,#f5f1e8,#f1ece2);border-radius:20px;padding:16px}.followup-head{display:flex;justify-content:space-between;gap:12px;align-items:center}.followup-progress{font-size:11.5px;color:var(--muted);font-weight:650}.followup-count{font-size:11px;font-weight:800;color:var(--accent);background:#e5ece7;border-radius:999px;padding:6px 9px;white-space:nowrap}.followup-question{font-size:17px;font-weight:800;letter-spacing:-.025em;margin:9px 0 12px}.followup-body{display:grid;gap:10px}.inline-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.inline-form input{width:100%;min-width:0;border:1px solid #d7cfbf;border-radius:13px;background:#fffdf8;color:var(--ink);padding:12px 13px;font:inherit;outline:none}.inline-form input:focus{border-color:#7b9587;box-shadow:0 0 0 3px rgba(70,103,86,.10)}.inline-form .primary,.inline-form .ghost{padding:11px 15px}.choice-grid{display:flex;flex-wrap:wrap;gap:8px}.choice-chip{background:#fffdf8;border:1px solid #d7cfbf;color:var(--ink);padding:10px 13px;font-size:13px;font-weight:750}.choice-chip:hover{border-color:#8fa297}.candidate-list{display:grid;gap:8px}.candidate-button{text-align:left;background:#fffdf8;border:1px solid #d7cfbf;border-radius:14px;padding:12px 13px;color:var(--ink)}.candidate-button strong{display:block;font-size:13px}.candidate-button small{display:block;color:var(--muted);font-size:11.5px;line-height:1.45;margin-top:3px}.candidate-button.dashed{border-style:dashed;border-color:#8ca092}.candidate-button:hover{border-color:#7f978a}.text-action{justify-self:start;background:transparent;color:var(--accent);font-size:12px;font-weight:800;padding:6px 2px;border-radius:6px;text-decoration:underline;text-underline-offset:3px}.lookup-note{font-size:12px;line-height:1.55;color:#5f5a52;background:rgba(255,253,248,.65);border-radius:12px;padding:10px 11px}.or-divider{font-size:11px;color:var(--muted);text-align:center;position:relative;margin:1px 0}.or-divider:before,.or-divider:after{content:"";position:absolute;top:50%;width:38%;height:1px;background:#d7cfbf}.or-divider:before{left:0}.or-divider:after{right:0}.project-search{margin-top:2px}
@media(max-width:520px){.domain-segments{grid-template-columns:repeat(3,minmax(0,1fr))}.domain-segments button{font-size:12px;padding-left:5px;padding-right:5px;min-height:40px}.management-segments button{min-height:40px}.followup-panel{border-radius:18px;padding:14px}.inline-form{grid-template-columns:1fr}.inline-form button{width:100%;min-height:44px}.choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.choice-chip{min-height:43px}.project-search{grid-template-columns:1fr}.followup-question{font-size:16px}}


/* MOMENTA v1.4: ticket image capture + CAVEA ticket metadata */
.ticket-image-tools{margin:8px 0 2px;padding:12px 0 0;border-top:1px solid rgba(220,214,202,.75);display:flex;align-items:center;gap:12px;flex-wrap:wrap}.ticket-image-tools[hidden]{display:none}.ticket-image-btn{padding:10px 13px}.ticket-image-note{font-size:11.5px;line-height:1.45;color:var(--muted);flex:1;min-width:220px}.ticket-panel{margin-top:18px;border:1px solid #d9d0c1;background:#f7f3eb;border-radius:20px;padding:15px}.ticket-panel[hidden]{display:none}.ticket-add-button{width:100%;text-align:left;background:transparent;color:var(--ink);padding:2px;border-radius:10px}.ticket-add-button strong{display:block;font-size:14px}.ticket-add-button span{display:block;font-size:12px;color:var(--muted);margin-top:4px}.ticket-panel-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.ticket-panel-sub{font-size:11.5px;color:var(--muted);margin-top:3px}.ticket-source-badge{font-size:10.5px;font-weight:800;color:var(--accent);background:#e5ece7;border-radius:999px;padding:6px 9px;white-space:nowrap}.ticket-acquisition{margin-top:14px}.ticket-field-label{font-size:12px;font-weight:800;color:#514a40;margin-bottom:8px}.ticket-acquisition .choice-chip.selected{background:var(--accent);border-color:var(--accent);color:white}.ticket-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:14px;align-items:start}.ticket-fields label{display:grid;gap:6px;align-content:start}.ticket-fields label>span{font-size:11.5px;font-weight:750;color:var(--muted)}.ticket-fields input,.ticket-fields select,.ticket-fields textarea{width:100%;min-width:0;border:1px solid #d7cfbf;border-radius:12px;background:#fffdf8;color:var(--ink);padding:11px 12px;font:inherit;outline:none}.ticket-fields input:focus,.ticket-fields select:focus,.ticket-fields textarea:focus{border-color:#7b9587;box-shadow:0 0 0 3px rgba(70,103,86,.10)}.ticket-proof-detail{grid-column:1/-1}.ticket-privacy-note{font-size:11px;line-height:1.5;color:var(--muted);margin-top:12px;padding-top:10px;border-top:1px solid #ded6c9}
@media(max-width:520px){.ticket-image-tools{align-items:stretch}.ticket-image-btn{width:100%}.ticket-image-note{min-width:0}.ticket-fields{grid-template-columns:1fr}.ticket-proof-detail{grid-column:auto}.ticket-panel{border-radius:18px;padding:14px}}

/* v1.4.1 ticket recognition refinements */
.ticket-cast{grid-column:1/-1}.ticket-cast textarea{resize:vertical;min-height:72px}.ticket-cast small,.ticket-inline-note{font-size:10.5px;line-height:1.45;color:var(--muted)}.ticket-proof-detail.disabled{opacity:.55}.ticket-proof-detail input:disabled{cursor:not-allowed;background:#eee9df;color:#8b8378}.ticket-inline-note{margin-top:4px}
@media(max-width:520px){.ticket-cast{grid-column:auto}}

/* v1.4.2 transfer metadata */
.ticket-transfer{margin-top:12px;padding:12px;border:1px solid #ddd4c5;background:#fffaf2;border-radius:14px}.ticket-transfer-choices{margin-bottom:10px}.ticket-transfer .choice-chip.selected{background:var(--accent);border-color:var(--accent);color:white}.ticket-transferor{display:grid;gap:6px}.ticket-transferor>span{font-size:11.5px;font-weight:750;color:var(--muted)}.ticket-transferor input{width:100%;min-width:0;border:1px solid #d7cfbf;border-radius:12px;background:#fffdf8;color:var(--ink);padding:11px 12px;font:inherit;outline:none}.ticket-transferor input:focus{border-color:#7b9587;box-shadow:0 0 0 3px rgba(70,103,86,.10)}.ticket-transferor small{font-size:10.5px;line-height:1.45;color:var(--muted)}

/* v1.4.3 invite/giveaway detail */
.ticket-acquisition-detail{margin-top:10px}

/* v1.4.4 acquisition-aware vendor policy + ticket grid alignment */
.ticket-fields input,.ticket-fields select{min-height:46px}.ticket-vendor-field.disabled{opacity:.62}.ticket-vendor-field input:disabled{cursor:not-allowed;background:#eee9df;color:#756e64}.ticket-vendor-field.disabled .ticket-inline-note{opacity:1}

/* MOMENTA v1.4.8: daily-use imports + compact mobile */
.integration-card{margin:0 0 16px;border:1px solid rgba(214,205,191,.9);background:rgba(255,253,248,.64);border-radius:18px;padding:13px}.integration-head{display:flex;align-items:flex-end;justify-content:space-between;gap:12px}.integration-title{font-size:14px;font-weight:800;letter-spacing:-.015em;margin-top:2px}.integration-note{font-size:10.5px;color:var(--muted);text-align:right}.integration-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:10px}.integration-button{min-height:46px;text-align:left;display:flex;align-items:center;justify-content:space-between;gap:8px}.integration-button small{font-size:10px;color:var(--ok);font-weight:800}.integration-button.not-configured small{color:var(--muted)}.source-panel{margin-top:11px;padding-top:11px;border-top:1px solid #ded6c9}.source-panel-head{display:flex;justify-content:space-between;align-items:center;gap:12px}.source-list{display:grid;gap:7px;margin-top:8px;max-height:340px;overflow:auto}.source-item{width:100%;text-align:left;border:1px solid #ddd4c5;background:#fffdf8;border-radius:13px;padding:10px 11px;color:var(--ink)}.source-item strong{display:block;font-size:12.5px;line-height:1.35}.source-item small{display:block;color:var(--muted);font-size:10.5px;line-height:1.45;margin-top:3px}.source-empty{font-size:12px;color:var(--muted);padding:12px 3px}.ticket-image-tools{align-items:flex-start}.ticket-image-btn{min-height:44px}
@media(max-width:520px){.integration-card{border-radius:16px;padding:12px}.integration-head{align-items:flex-start}.integration-note{max-width:112px}.integration-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.integration-button{width:100%;min-height:46px;padding:10px 11px;font-size:12px;line-height:1.25;align-items:flex-start;flex-direction:column}.integration-button small{font-size:9.5px}.source-list{max-height:290px}.ticket-image-btn{min-height:48px}}

.integration-button[hidden]{display:none}

/* MOMENTA v1.5 Phase A: mobile-first staged capture */
.capture-card{scroll-margin-top:14px}.subtype-picker,.management-picker{scroll-margin-top:14px}@media(max-width:520px){.type-picker,.subtype-picker{margin-bottom:13px}.type-picker-label{font-size:12px;margin-bottom:7px}.input-label{font-size:13px}.hint{font-size:11px}.micro-hint{font-size:10.5px}.capture-actions{margin-top:10px}}

/* MOMENTA v1.5: classification-first Quick Import */
.quick-import-actions{grid-template-columns:repeat(3,minmax(0,1fr))}.quick-import-actions .integration-button{min-height:44px}.integration-footnote{font-size:10.5px;line-height:1.45;color:var(--muted);margin-top:9px}.integration-card[hidden]{display:none}.integration-card{scroll-margin-top:14px}
@media(max-width:520px){.quick-import-actions{grid-template-columns:repeat(3,minmax(0,1fr))}.quick-import-actions .integration-button{min-height:42px;padding:8px 8px;font-size:11.5px}.quick-import-actions .integration-button small{font-size:9px}.integration-footnote{font-size:10px;margin-top:8px}}

/* MOMENTA v1.5 Travel Follow-up inbox */
.travel-followup-inbox{margin:0 0 16px;border:1px solid #cfd9d2;background:linear-gradient(180deg,rgba(235,242,237,.92),rgba(246,243,237,.86));border-radius:18px;padding:14px;box-shadow:0 9px 26px rgba(40,67,56,.05)}.travel-followup-inbox[hidden]{display:none}.travel-inbox-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.travel-inbox-title{font-size:14px;font-weight:820;letter-spacing:-.02em;margin-top:3px}.travel-followup-list{display:grid;gap:8px;margin-top:11px}.travel-followup-item{border:1px solid #d7dfd9;background:rgba(255,253,248,.92);border-radius:14px;padding:11px 12px}.travel-followup-main{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}.travel-followup-main strong{font-size:13px;line-height:1.35}.travel-followup-main small{display:block;color:var(--muted);font-size:10.5px;line-height:1.45;margin-top:3px}.travel-state-badge{font-size:10px;font-weight:800;color:var(--accent);white-space:nowrap;background:#e5ece7;border-radius:999px;padding:5px 8px}.travel-followup-actions{display:flex;gap:7px;margin-top:9px;flex-wrap:wrap}.travel-followup-actions button{padding:8px 10px;font-size:11.5px;font-weight:760}.travel-followup-actions .travel-not-needed{color:var(--muted);padding-left:5px;padding-right:5px}.travel-ticket-preview{margin-top:9px;border-top:1px solid #e1e5e1;padding-top:9px;font-size:11.5px;line-height:1.55;color:#4a4d47}.travel-ticket-preview strong{font-size:12px;color:var(--ink)}.travel-ticket-confirm{margin-top:8px;background:var(--selector-domain);color:#fff;padding:9px 11px}.travel-empty{font-size:11.5px;color:var(--muted);padding:3px 1px}
@media(max-width:520px){.travel-followup-inbox{border-radius:16px;padding:12px}.travel-inbox-title{font-size:13px}.travel-followup-main{gap:7px}.travel-followup-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.travel-followup-actions button{min-height:39px}}

/* MOMENTA v1.5 R6: Sue mobile micro-polish */
.tagline{color:#8b867d;font-weight:600}
.capture-actions #voiceBtn,.capture-actions #parseBtn{font-size:13px;line-height:1.2;padding:10px 14px;border-radius:12px}
.save-actions #editBtn,.save-actions #saveBtn{font-size:13px;line-height:1.2;padding:10px 14px;border-radius:12px}
@media(max-width:520px){
  .tagline{font-size:12px;color:#918b82;font-weight:600}
  .capture-actions #voiceBtn,.capture-actions #parseBtn{min-height:38px;padding:9px 13px;font-size:12.5px}
  .save-actions #editBtn,.save-actions #saveBtn{min-height:40px;padding:9px 13px;font-size:12.5px}
}
.place-standard-block{display:grid;gap:4px}.place-standard-name{font-weight:800;line-height:1.35}.place-check{color:var(--ok);font-size:.88em}.place-original{display:flex;gap:7px;align-items:baseline;color:var(--muted);font-size:11.5px;font-weight:550}.place-original span{font-size:10px;letter-spacing:.02em;opacity:.82}.place-meta{display:flex;gap:9px;align-items:center;color:var(--muted);font-size:10.5px;font-weight:600}.place-standard-block .place-map-link{margin-left:0;color:var(--muted);font-size:10.5px;font-weight:650;opacity:.9}.place-standard-block .place-address{margin-top:0}.place-source{color:var(--muted);font-weight:650}

.travel-prep-panel{margin-top:18px;border:1px solid #cbd8d0;background:linear-gradient(180deg,rgba(237,244,239,.9),rgba(247,244,237,.92));border-radius:20px;padding:16px}.travel-prep-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.travel-prep-title{font-size:16px;font-weight:820;letter-spacing:-.025em;margin-top:4px}.travel-prep-badge{font-size:10.5px;font-weight:800;color:var(--accent);background:#e2ece5;border-radius:999px;padding:6px 9px}.travel-prep-body{display:grid;gap:11px;margin-top:13px}.travel-prep-core{display:grid;grid-template-columns:1fr auto 1.25fr;align-items:center;gap:9px;background:rgba(255,253,248,.8);border:1px solid #d8e0da;border-radius:15px;padding:12px}.travel-prep-core>div:not(.travel-prep-arrow){display:grid;gap:2px}.travel-prep-core span,.travel-prep-label,.travel-prep-line span{font-size:10.5px;color:var(--muted);font-weight:650}.travel-prep-core strong{font-size:18px;letter-spacing:-.025em}.travel-prep-core small{font-size:10px;color:var(--muted);font-weight:550}.travel-prep-arrow{color:#829188;font-weight:800}.travel-prep-hub{border:1px solid #d8e0da;background:rgba(255,253,248,.7);border-radius:15px;padding:11px 12px}.travel-prep-hub-main{display:flex;align-items:baseline;gap:8px;margin-top:3px}.travel-prep-hub-main strong{font-size:14px}.travel-prep-hub-main span{font-size:12px;color:var(--accent);font-weight:800}.travel-prep-hub small{display:block;color:var(--muted);font-size:10.8px;line-height:1.5;margin-top:4px}.travel-prep-lines{display:grid;gap:6px}.travel-prep-line{display:flex;justify-content:space-between;gap:12px;font-size:11.5px}.travel-prep-line strong{font-size:11.5px;text-align:right}.travel-prep-note,.travel-prep-loading{font-size:10.8px;line-height:1.55;color:var(--muted);background:rgba(255,253,248,.55);border-radius:11px;padding:9px 10px}.travel-prep-loading{color:#52655b}.travel-prep-panel[hidden]{display:none}@media(max-width:520px){.travel-prep-panel{border-radius:18px;padding:14px}.travel-prep-core{grid-template-columns:1fr auto 1.25fr;padding:10px}.travel-prep-core strong{font-size:16px}.travel-prep-title{font-size:15px}}

/* MOMENTA v1.6 A5: origin-first Journey Scenarios */
.travel-origin-box,.travel-scenarios{display:grid;gap:9px}.travel-origin-choices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.travel-origin-choice{border:1px solid #d6ddd8;background:rgba(255,253,248,.78);border-radius:13px;padding:9px 10px;text-align:left;color:var(--ink);min-height:54px}.travel-origin-choice strong{display:block;font-size:12px;line-height:1.25}.travel-origin-choice small{display:block;margin-top:3px;color:var(--muted);font-size:9.8px;line-height:1.35}.travel-origin-choice.selected{border-color:#8ca397;background:#eef4f0}.travel-origin-selected{display:grid;gap:2px;padding:9px 10px;border-left:3px solid #849a8e;background:rgba(255,253,248,.65);border-radius:8px}.travel-origin-selected span{font-size:9.8px;color:var(--muted);font-weight:650}.travel-origin-selected strong{font-size:12.5px}.travel-origin-selected small{font-size:10px;color:var(--muted)}.travel-origin-search{display:grid;gap:8px}.travel-origin-search>small{font-size:9.5px;color:var(--muted);line-height:1.45}.travel-origin-candidate{padding:9px 10px}.travel-scenarios{margin-top:2px}.travel-scenario{border:1px solid #d7dfd9;background:rgba(255,253,248,.78);border-radius:15px;padding:11px 12px;display:grid;gap:9px}.travel-scenario-head{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}.travel-scenario-head>div{display:grid;gap:3px}.travel-mode-kicker{font-size:9.8px;color:var(--muted);font-weight:800;letter-spacing:.04em}.travel-scenario-head strong{font-size:12.2px;line-height:1.45}.travel-scenario-state{font-size:9.5px;font-weight:780;color:var(--accent);background:#e6ede8;border-radius:999px;padding:5px 7px;white-space:nowrap}.travel-scenario-detail{font-size:10.3px;line-height:1.55;color:#59615c}.travel-scenario-note{font-size:9.8px;line-height:1.5;color:var(--muted)}.travel-hub-group{display:grid;gap:5px}.travel-hub-group>span{font-size:9.8px;color:var(--muted);font-weight:650}.travel-hub-choices{display:flex;gap:6px;overflow-x:auto;padding-bottom:2px}.travel-hub-choice{flex:0 0 auto;min-width:110px;max-width:160px;border:1px solid #d6ddd8;background:#fffdf8;border-radius:11px;padding:7px 9px;text-align:left;color:var(--ink)}.travel-hub-choice strong{display:block;font-size:10.8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.travel-hub-choice small{display:block;margin-top:2px;font-size:9px;color:var(--muted)}.travel-hub-choice.selected{border-color:#82998c;background:#edf3ef}.travel-prep-body .inline-form input{min-width:0}
@media(max-width:520px){.travel-origin-choices{grid-template-columns:repeat(2,minmax(0,1fr))}.travel-origin-choice{min-height:50px;padding:8px 9px}.travel-scenario{padding:10px}.travel-scenario-head strong{font-size:11.5px}.travel-hub-choice{min-width:104px}}

/* MOMENTA v1.6 A6: transport hub policy badges */
.travel-hub-title{display:flex;align-items:center;gap:5px;min-width:0}.travel-hub-title strong{min-width:0}.travel-hub-service{flex:0 0 auto;font-size:8.5px;font-weight:800;color:var(--accent);background:#e7eee9;border-radius:999px;padding:2px 5px;line-height:1.25}.travel-hub-choice.selected .travel-hub-service{background:#dfeae3}

/* MOMENTA v1.6 A6.2: clean hubs + adjustable arrival + smooth refresh */
.travel-arrival-adjust{display:flex;align-items:center;gap:6px;margin-top:2px}.travel-arrival-adjust button{border:1px solid #d5ddd7;background:#fffdf8;color:#5c6a62;border-radius:999px;padding:3px 7px;font-size:9px;font-weight:800;line-height:1.2}.travel-arrival-adjust button:active{transform:translateY(1px)}.travel-arrival-adjust small{margin:0}.travel-arrival-adjust b{font-weight:850;color:#4f6258}.travel-prep-panel.refreshing .travel-prep-badge{background:#f0eee6;color:#7b7363}.travel-prep-panel.refreshing .travel-prep-body{opacity:.84;transition:opacity .16s ease}.travel-prep-panel:not(.refreshing) .travel-prep-body{opacity:1;transition:opacity .16s ease}
.travel-timetable{display:grid;gap:6px;padding-top:2px}.travel-timetable-title{display:flex;align-items:baseline;justify-content:space-between;gap:8px}.travel-timetable-title span{font-size:9.8px;color:var(--muted);font-weight:700}.travel-timetable-title small{font-size:8.8px;color:#7b867f}.travel-service-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.travel-service-option{min-width:0;border:1px solid #d8dfda;background:#fffdf8;border-radius:11px;padding:7px 8px;display:grid;gap:2px}.travel-service-option.recommended{border-color:#7f9b8c;background:#edf4ef}.travel-service-role{font-size:8.8px;font-weight:800;color:var(--accent)}.travel-service-option strong{font-size:11.5px;letter-spacing:-.02em}.travel-service-option small{font-size:8.8px;color:var(--muted);line-height:1.35;overflow:hidden;text-overflow:ellipsis}.travel-service-option span{font-size:9px;font-weight:760;color:#53655b}.travel-timetable-setup,.travel-timetable-notice{font-size:9.5px;line-height:1.45;border-radius:10px;padding:7px 8px;background:#f4f1e8;color:#746c5d}.travel-timetable-notice{background:#f6f4ef;color:var(--muted)}.travel-comparison-recommend{display:grid;gap:2px;border:1px solid #c8d8cf;background:#eaf2ed;border-radius:12px;padding:9px 10px}.travel-comparison-recommend>span{font-size:9.3px;color:var(--accent);font-weight:800}.travel-comparison-recommend strong{font-size:12px}.travel-comparison-recommend small{font-size:9.2px;color:var(--muted);line-height:1.4}@media(max-width:520px){.travel-service-options{grid-template-columns:1fr}.travel-service-option{grid-template-columns:auto 1fr;column-gap:8px;align-items:baseline}.travel-service-option .travel-service-role{grid-column:1}.travel-service-option strong{grid-column:2}.travel-service-option small,.travel-service-option span{grid-column:1 / -1}}

/* A8.7 Travel choice + save */
.travel-service-option{appearance:none;text-align:left;color:var(--ink);font:inherit;cursor:pointer;position:relative}
.travel-service-option:hover{border-color:#9caf9f}
.travel-service-option.selected{border-color:#557565;background:#dfece4;box-shadow:inset 0 0 0 1px rgba(85,117,101,.18)}
.travel-service-option.selected b{font-size:9px;color:var(--accent);font-weight:850;margin-top:2px}
.travel-scenario-select{appearance:none;width:100%;border:1px solid #a9b9af;background:#f7faf8;color:#41594c;border-radius:11px;padding:8px 10px;font:inherit;font-size:10.5px;font-weight:820;cursor:pointer}
.travel-scenario-select:hover{background:#edf4ef}
.travel-scenario-select.selected{border-color:#557565;background:#dfece4;color:#274738}
.travel-selection{display:grid;gap:7px;margin-top:2px}
.travel-selection-empty{display:grid;gap:3px;border:1px dashed #c4d0c9;background:rgba(255,253,248,.62);border-radius:12px;padding:10px 11px}
.travel-selection-empty strong{font-size:11.5px}
.travel-selection-empty small{font-size:9.5px;color:var(--muted);line-height:1.45}
.travel-selection-card{display:flex;align-items:center;justify-content:space-between;gap:10px;border:1px solid #8fa89a;background:#e7f0ea;border-radius:13px;padding:10px 11px}
.travel-selection-card>div{display:grid;gap:2px;min-width:0}
.travel-selection-card span{font-size:9px;color:var(--accent);font-weight:850}
.travel-selection-card strong{font-size:11.8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.travel-selection-card small{font-size:9.3px;color:var(--muted);line-height:1.4}
.travel-selection-card button{flex:0 0 auto;border:0;background:rgba(255,255,255,.72);color:#53665b;border-radius:9px;padding:7px 9px;font-size:9.5px;font-weight:800;cursor:pointer}
@media(max-width:520px){.travel-selection-card{align-items:flex-start}.travel-selection-card strong{white-space:normal}.travel-selection-card button{padding:6px 8px}}

/* A8.8 Auto Recommendation + Instant Re-ranking */
.travel-selection-card.invalid{border-color:#c9a58e;background:#f8eee7}
.travel-selection-card em{font-style:normal;font-size:9.2px;font-weight:800;color:#9a5f3a;line-height:1.4;margin-top:2px}
.travel-selection-actions{display:flex;align-items:center;gap:6px;flex:0 0 auto}
.travel-selection-actions button{border:0;background:rgba(255,255,255,.76);color:#53665b;border-radius:9px;padding:7px 9px;font-size:9.5px;font-weight:800;cursor:pointer}
.travel-selection-card.invalid .travel-selection-actions button:first-child{background:#fff;color:#8d5433;border:1px solid #d8b49d}
.travel-arrival-adjust small{max-width:190px;line-height:1.25}
@media(max-width:520px){.travel-selection-actions{flex-direction:column;align-items:stretch}.travel-selection-actions button{width:100%}.travel-arrival-adjust small{max-width:160px}}

.save-outcome{display:grid;gap:10px}.save-outcome-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:5px 12px;padding:4px 0}.save-outcome-row small{grid-column:1/-1;color:#7a3428;line-height:1.45;overflow-wrap:anywhere}.save-state{font-weight:800}.save-state.success{color:#244c35}.save-state.pending{color:#805b18}.save-state.failed{color:#8b3529}


/* A8.9.1 Typography scale normalization · mobile-first */
:root{
  --text-caption:11px;
  --text-small:12px;
  --text-control:13px;
  --text-body:14px;
  --text-emphasis:16px;
  --text-section:22px;
}
/* Core hierarchy */
.eyebrow,.version-tag,.followup-count,.or-divider,.ticket-source-badge,.ticket-privacy-note,.integration-button small,.place-original span,.place-meta,.place-standard-block .place-map-link,.travel-prep-badge,.travel-prep-core small,.travel-origin-choice small,.travel-origin-selected span,.travel-origin-selected small,.travel-origin-search>small,.travel-mode-kicker,.travel-scenario-state,.travel-scenario-note,.travel-hub-group>span,.travel-hub-choice small,.travel-hub-service,.travel-arrival-adjust button,.travel-timetable-title span,.travel-timetable-title small,.travel-service-role,.travel-service-option small,.travel-service-option span,.travel-timetable-setup,.travel-timetable-notice,.travel-comparison-recommend>span,.travel-comparison-recommend small,.travel-service-option.selected b,.travel-selection-empty small,.travel-selection-card span,.travel-selection-card small,.travel-selection-card button,.travel-selection-card em,.travel-selection-actions button{
  font-size:var(--text-caption);
}
.hint,.badge,.subtype-segments button,.micro-hint,.followup-progress,.candidate-button small,.text-action,.lookup-note,.ticket-image-note,.ticket-panel-sub,.ticket-field-label,.ticket-fields label>span,.ticket-cast small,.ticket-inline-note,.ticket-transferor>span,.ticket-transferor small,.integration-note,.source-item small,.source-empty,.integration-footnote,.quick-import-actions .integration-button,.travel-followup-main small,.travel-state-badge,.travel-followup-actions button,.travel-ticket-preview,.travel-empty,.place-original,.place-source,.place-address,.travel-prep-core span,.travel-prep-label,.travel-prep-line span,.travel-prep-hub-main span,.travel-prep-hub small,.travel-prep-line,.travel-prep-line strong,.travel-prep-note,.travel-prep-loading,.travel-origin-choice strong,.travel-origin-selected strong,.travel-scenario-detail,.travel-hub-choice strong,.travel-scenario-select,.travel-selection-empty strong,.travel-selection-card strong{
  font-size:var(--text-small);
}
.chip,.preview-grid dt,.warning-text,.type-picker-label,.type-segments button,.candidate span,.person-name,.person-choice span,.management-segments button,.choice-chip,.candidate-button strong,.source-item strong,.integration-button,.travel-followup-main strong,.capture-actions #voiceBtn,.capture-actions #parseBtn,.save-actions #editBtn,.save-actions #saveBtn,.travel-scenario-head strong,.travel-comparison-recommend strong{
  font-size:var(--text-control);
}
.tagline,.input-label,.result,.ticket-add-button strong,.integration-title,.travel-inbox-title,.travel-prep-hub-main strong{
  font-size:var(--text-body);
}
textarea,.followup-question,.travel-prep-title{font-size:var(--text-emphasis)}
h2{font-size:var(--text-section)}
.preview-grid dd{font-size:15px}
.travel-prep-core strong{font-size:18px}
/* Controls inherit a predictable reading size even when older component CSS differs. */
.inline-form input,.ticket-fields input,.ticket-fields select,.ticket-transferor input{font-size:var(--text-control)}
@media(max-width:520px){
  .tagline{font-size:var(--text-small)}
  .type-picker-label,.input-label,.capture-actions #voiceBtn,.capture-actions #parseBtn,.save-actions #editBtn,.save-actions #saveBtn,.travel-inbox-title,.travel-scenario-head strong{font-size:var(--text-control)}
  .subtype-segments button,.domain-segments button,.quick-import-actions .integration-button{font-size:var(--text-small)}
  .followup-question,.travel-prep-title{font-size:var(--text-emphasis)}
}

/* A8.10 · Access & Daily Use · Capture First */
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.shell{width:min(1080px,100%)}
.capture-first{padding:26px 28px}.capture-first-head,.daily-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.capture-first-note{font-size:12px;color:var(--muted);background:#f0ece4;border-radius:999px;padding:7px 10px;white-space:nowrap}.capture-first textarea{font-size:20px;min-height:130px;padding:16px 2px 8px;line-height:1.55}.capture-imports{margin-top:18px}.classification-details{margin-top:18px;border-top:1px solid var(--line);padding-top:14px}.classification-details summary{cursor:pointer;font-size:13px;font-weight:800;color:#5d615b;list-style:none}.classification-details summary::-webkit-details-marker{display:none}.classification-details summary span{font-size:11px;font-weight:650;color:var(--muted);margin-left:5px}.classification-details[open] summary{margin-bottom:18px}.daily-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;margin-top:18px}.daily-card{background:rgba(255,253,248,.86);border:1px solid rgba(220,214,202,.9);border-radius:24px;box-shadow:0 10px 34px rgba(35,28,18,.055);padding:20px;min-width:0}.daily-card-head{align-items:center;margin-bottom:13px}.daily-card-head h2{font-size:18px}.daily-list{display:grid;gap:9px}.daily-item,.review-item{border:1px solid #e0d9ce;background:rgba(255,255,255,.68);border-radius:16px;padding:12px 13px;display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.daily-item>div,.review-copy{min-width:0;display:grid;gap:3px}.daily-item strong,.review-item strong{font-size:13.5px;line-height:1.35}.daily-item small,.review-item small{font-size:11.5px;color:var(--muted);line-height:1.45}.review-item{display:grid}.review-copy p{font-size:12px;color:#665e52;line-height:1.5;margin:5px 0 0}.mini-status{font-size:9.5px;font-weight:800;padding:5px 7px;border-radius:999px;background:#e5ece7;color:var(--accent);white-space:nowrap}.mini-status.warn{background:#f5e8d7;color:#865a25}.review-actions,.guard-actions{display:flex;flex-wrap:wrap;gap:7px}.review-actions button,.review-project-search button,.guard-box button{padding:9px 11px;font-size:11.5px}.review-project-search{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px;margin-top:5px}.review-project-search input{min-width:0;border:1px solid #d7cfbf;border-radius:12px;background:#fffdf8;padding:10px 11px;font:inherit;font-size:12px;outline:none}.review-project-results{grid-column:1/-1;display:grid;gap:6px}.project-result{background:#fffdf8;border:1px solid #d9d2c6;padding:10px 11px;text-align:left;display:grid;grid-template-columns:auto 1fr;gap:2px 8px}.project-result strong{font-size:11px;color:var(--accent)}.project-result span{font-size:12px;font-weight:750;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-result small{grid-column:1/-1}.guard-box{display:grid;gap:9px}.guard-title{font-weight:850;color:#6c4219}.guard-candidate{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px 10px;align-items:center;border-top:1px solid rgba(154,92,29,.18);padding-top:9px}.guard-candidate strong{font-size:12.5px}.guard-candidate small{font-size:11px;color:#7b6d5c;grid-column:1}.guard-candidate button{grid-column:2;grid-row:1/3}.mobile-nav{display:none}.login-shell{width:min(460px,100%);margin:0 auto;min-height:100dvh;display:grid;place-items:center;padding:24px}.login-card{width:100%;background:rgba(255,253,248,.96);border:1px solid var(--line);border-radius:28px;box-shadow:var(--shadow);padding:30px}.login-card h1{font-size:44px;margin:10px 0 16px}.login-card p{font-size:13px;color:var(--muted);line-height:1.6}.login-card form{display:grid;gap:10px;margin-top:24px}.login-card label{font-size:12px;font-weight:800;color:#676158}.login-card input{width:100%;border:1px solid #d4ccbe;border-radius:14px;background:#fff;padding:14px;font:inherit;outline:none}.login-card input:focus{border-color:#71907f;box-shadow:0 0 0 3px rgba(70,103,86,.12)}.login-card button{min-height:48px;margin-top:4px}.login-message{font-size:12px;color:#7a3428;background:#fff0ed;border:1px solid #ebc0b9;border-radius:12px;padding:10px 11px}
@media(max-width:720px){body{padding-bottom:calc(72px + env(safe-area-inset-bottom))}.shell{padding-left:14px;padding-right:14px}.capture-first{padding:20px}.capture-first-head{display:grid;gap:8px}.capture-first-note{width:max-content;max-width:100%;white-space:normal}.capture-first textarea{font-size:18px;min-height:122px}.daily-grid{grid-template-columns:1fr}.daily-card{border-radius:20px;padding:17px}.mobile-nav{position:fixed;z-index:50;left:12px;right:12px;bottom:max(10px,env(safe-area-inset-bottom));display:grid;grid-template-columns:repeat(4,1fr);background:rgba(25,28,26,.94);backdrop-filter:blur(16px);border-radius:20px;padding:7px;box-shadow:0 14px 35px rgba(0,0,0,.22)}.mobile-nav button{background:transparent;color:#f7f4ee;min-height:48px;display:grid;place-items:center;font-size:17px;gap:0}.mobile-nav button span{font-size:9.5px;font-weight:700;color:#cfd7d1}.review-project-search{grid-template-columns:1fr}.review-project-search button,.review-project-results{grid-column:1}.guard-candidate{grid-template-columns:1fr}.guard-candidate button{grid-column:1;grid-row:auto}.login-shell{padding:14px}.login-card{padding:24px 20px;border-radius:24px}.login-card h1{font-size:38px}}

/* A8.10.2 · Final UI direction
   Final choice: very light cool gray + restrained muted blue.
   Green is reserved for connection/success status only. */
:root{
  --ink:#172235;
  --paper:#f3f6f9;
  --card:#fbfcfd;
  --line:#dce4eb;
  --muted:#738196;
  --accent:#6386ad;
  --accent-strong:#587da8;
  --accent-soft:#eaf1f8;
  --selector-domain:#5a7da5;
  --selector-detail:#6d8dab;
  --selector-management:#7e98b1;
  --warn:#9a642c;
  --ok:#2f7852;
  --shadow:0 14px 38px rgba(42,61,82,.075);
  --type-xs:11px;
  --type-sm:12.5px;
  --type-body:14px;
  --type-control:14px;
  --type-section:20px;
  --type-display:27px;
}
html{background:var(--paper);color:var(--ink)}
body{background:radial-gradient(circle at 88% 0%,rgba(102,136,172,.085),transparent 34rem),linear-gradient(180deg,#f6f8fa 0%,var(--paper) 68%);color:var(--ink)}
.tagline{color:#657286;font-size:var(--type-body);font-weight:620}
.eyebrow{font-size:var(--type-xs);color:#6e7e92}
h2{font-size:var(--type-section);line-height:1.25;letter-spacing:-.025em}
.version-tag{color:#66778d}
.brand-by{color:#6f7d8d}
.capture-card,.preview,.result,.daily-card,.login-card{background:rgba(251,252,253,.94);border-color:rgba(214,224,233,.98);box-shadow:var(--shadow)}
.capture-first{padding:26px 28px}
.capture-first h2{font-size:var(--type-display);line-height:1.18;letter-spacing:-.035em}
.capture-first-note{font-size:var(--type-sm);color:#6d7a8c;background:#edf1f5}
.capture-first textarea{font-size:18px;line-height:1.55;color:var(--ink)}
textarea::placeholder{color:#929eb0}
.primary{background:var(--accent-strong);color:#fff}
.ghost{background:#edf1f5;color:var(--ink)}
.hint{font-size:var(--type-sm);color:#748195}
.integration-card{border-color:#dce4eb;background:rgba(248,250,252,.82)}
.integration-button{background:#f0f4f7;color:var(--ink)}
.integration-button small{color:var(--accent-strong)}
.classification-details{border-color:var(--line)}
.classification-details summary{font-size:var(--type-control);color:#536174}
.classification-details summary span{font-size:var(--type-xs);color:var(--muted)}
.daily-card{border-color:#dae3ea;background:rgba(251,252,253,.92)}
.daily-card-head h2{font-size:var(--type-section)}
.daily-item,.review-item{border-color:#e0e7ed;background:rgba(255,255,255,.78)}
.daily-item strong,.review-item strong{font-size:var(--type-control)}
.daily-item small,.review-item small{font-size:var(--type-sm);color:var(--muted)}
.followup-count,.mini-status{color:var(--accent-strong);background:var(--accent-soft)}
.text-action{color:var(--accent-strong)}
.badge{background:#edf2f7;color:#58687b}
.type-segments button,.subtype-segments button,.management-segments button,.candidate-button,.choice-chip,.source-item,.project-result{background:#fbfcfd;border-color:#dbe4eb;color:#344256}
.person-choice,.inline-form input,.review-project-search input,.ticket-fields input,.ticket-fields select,.ticket-transferor input{background:#fbfcfd;border-color:#d8e1e9;color:var(--ink)}
.followup-panel{background:linear-gradient(180deg,#f2f6fa,#edf2f7);border-color:#d7e1e9}
.lookup-note{background:#f6f8fa;color:#5e6c7d}
.source-panel{border-color:#dce4eb}
.result.ok{border-color:#bdd9c9;color:#2b6446}.result.error{border-color:#e4c4bf;color:#7e3d34}
.status-dot{background:#4dad77;box-shadow:0 0 0 4px rgba(77,173,119,.12)}
.login-card input:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(99,134,173,.12)}

/* Typography: five stable levels instead of component-by-component drift. */
.capture-actions #voiceBtn,.capture-actions #parseBtn,.save-actions #editBtn,.save-actions #saveBtn,
.integration-button,.type-segments button,.subtype-segments button,.management-segments button,
.review-actions button,.review-project-search button,.guard-box button{font-size:var(--type-control)}
.source-empty,.review-copy p,.travel-empty{font-size:var(--type-sm);line-height:1.55}

/* Final mobile navigation: same simple line-icon language as the selected concept. */
.mobile-nav{display:none}
.mobile-nav button .nav-icon{display:grid;place-items:center;width:36px;height:36px;border-radius:13px;color:#617187;transition:background .15s ease,color .15s ease,box-shadow .15s ease}
.mobile-nav svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.mobile-nav button[aria-current="page"] .nav-icon{background:var(--accent-soft);color:var(--accent-strong);box-shadow:inset 0 0 0 1px rgba(99,134,173,.08)}
.mobile-nav button[aria-current="page"]>span:last-child{color:var(--accent-strong);font-weight:800}

@media(max-width:720px){
  body{padding-bottom:calc(82px + env(safe-area-inset-bottom))}
  .shell{padding:18px 14px 28px}
  .topbar{margin:6px 3px 18px;align-items:flex-start}
  .tagline{font-size:12.5px;line-height:1.45}
  .eyebrow{font-size:10.5px}
  .capture-first{padding:20px;border-radius:24px}
  .capture-first h2{font-size:26px;line-height:1.2;margin-top:7px}
  .capture-first-head{gap:9px}
  .capture-first-note{font-size:12px;padding:7px 10px}
  .capture-first textarea{font-size:17px;min-height:152px;padding-top:18px}
  .capture-actions{gap:9px;margin-top:10px}
  .capture-actions button{min-height:48px}
  .quick-import-actions{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}
  .quick-import-actions .integration-button{font-size:12px;min-height:76px;padding:11px 9px;justify-content:flex-start;gap:5px}
  .quick-import-actions .integration-button small{font-size:10.5px;line-height:1.25}
  .classification-details summary{font-size:13px}
  .hint{font-size:11.5px;line-height:1.45}
  .daily-grid{display:block;margin-top:0}
  .daily-card{border-radius:24px;padding:18px;margin-top:0;min-height:calc(100dvh - 180px)}
  .daily-card-head h2{font-size:20px}
  .daily-item,.review-item{padding:13px 14px}
  .daily-item strong,.review-item strong{font-size:14px}
  .daily-item small,.review-item small{font-size:12px}

  .mobile-nav{position:fixed;z-index:60;left:12px;right:12px;bottom:max(10px,env(safe-area-inset-bottom));display:grid;grid-template-columns:repeat(4,1fr);background:rgba(251,252,253,.94);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border:1px solid rgba(216,225,233,.98);border-radius:24px;padding:7px 8px;box-shadow:0 13px 34px rgba(40,58,79,.15)}
  .mobile-nav button{background:transparent;color:#657387;min-height:58px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding:2px 4px;border-radius:16px;font-size:inherit}
  .mobile-nav button>span:last-child{font-size:11px;line-height:1.15;font-weight:700;color:#748196}

  /* Four actual app views on mobile. Desktop remains a dashboard. */
  body[data-mobile-view="capture"] .daily-grid,
  body[data-mobile-view="capture"] #travelFollowupInbox{display:none!important}
  body[data-mobile-view="schedule"] #captureHome,
  body[data-mobile-view="schedule"] #reviewCard,
  body[data-mobile-view="schedule"] #travelFollowupInbox,
  body[data-mobile-view="schedule"] #preview,
  body[data-mobile-view="schedule"] #result{display:none!important}
  body[data-mobile-view="review"] #captureHome,
  body[data-mobile-view="review"] #upcomingCard,
  body[data-mobile-view="review"] #travelFollowupInbox,
  body[data-mobile-view="review"] #preview,
  body[data-mobile-view="review"] #result{display:none!important}
  body[data-mobile-view="travel"] #captureHome,
  body[data-mobile-view="travel"] .daily-grid,
  body[data-mobile-view="travel"] #preview,
  body[data-mobile-view="travel"] #result{display:none!important}
  body[data-mobile-view="schedule"] #upcomingCard,
  body[data-mobile-view="review"] #reviewCard,
  body[data-mobile-view="travel"] #travelFollowupInbox{display:block!important}
  body[data-mobile-view="schedule"] #upcomingCard,
  body[data-mobile-view="review"] #reviewCard{margin-top:0}
  body[data-mobile-view="travel"] #travelFollowupInbox{margin-top:0;min-height:calc(100dvh - 180px);background:rgba(251,252,253,.92);border:1px solid #dae3ea;border-radius:24px;padding:18px;box-shadow:var(--shadow)}
}

@media(min-width:721px){
  body[data-mobile-view] .daily-grid{display:grid}
  body[data-mobile-view] #captureHome{display:block}
}
.mobile-hint{display:none}@media(max-width:720px){.desktop-hint{display:none}.mobile-hint{display:inline}}


/* A8.10.4 · Final mobile polish
   Keep the selected cool-gray/blue palette; improve density and empty-state rhythm only. */
.empty-state{display:grid;justify-items:center;text-align:center;gap:5px;color:var(--muted);padding:24px 14px 18px}
.empty-state-icon{width:42px;height:42px;border-radius:15px;display:grid;place-items:center;background:var(--accent-soft);color:var(--accent-strong);margin-bottom:4px}
.empty-state-icon svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}
.empty-state strong{font-size:var(--type-control);line-height:1.4;color:#526176}
.empty-state>span:last-child{font-size:var(--type-sm);line-height:1.5;max-width:27em}
@media(min-width:721px){
  .capture-first{padding:24px 26px}
  .capture-first textarea{min-height:108px;padding-top:12px}
  .capture-imports{margin-top:14px}
  .daily-card.is-empty .empty-state{min-height:112px;align-content:center}
}
@media(max-width:720px){
  .shell{padding-top:16px}
  .topbar{margin-bottom:14px}
  .tagline{font-size:11.5px;line-height:1.4;font-weight:570;color:#7b889a}
  .capture-first{padding:18px;border-radius:24px}
  .capture-first h2{font-size:25px;line-height:1.18;margin-top:6px}
  .capture-first-head{gap:7px}
  .capture-first-note{font-size:11.5px;padding:6px 9px}
  .capture-first textarea{font-size:16px;line-height:1.5;min-height:108px;padding-top:14px;word-break:keep-all;overflow-wrap:break-word}
  .capture-actions{margin-top:8px}
  .capture-actions button{min-height:44px}
  .capture-imports{margin-top:13px;padding:11px}
  .quick-import-actions{gap:6px}
  .quick-import-actions .integration-button{min-height:66px;padding:9px 8px;font-size:11.5px;line-height:1.25}
  .quick-import-actions .integration-button small{font-size:10.8px;line-height:1.3;font-weight:720;color:#5e7fa5}
  .classification-details{margin-top:14px;padding-top:12px}
  .hint{font-size:11.5px;color:#6d7a8d}
  .daily-card{min-height:0}
  body[data-mobile-view="schedule"] #upcomingCard{min-height:0}
  body[data-mobile-view="review"] #reviewCard{min-height:0}
  body[data-mobile-view="travel"] #travelFollowupInbox{min-height:0}
  body[data-mobile-view="review"] #reviewCard.is-empty,
  body[data-mobile-view="travel"] #travelFollowupInbox.is-empty{min-height:280px}
  body[data-mobile-view="review"] #reviewCard.is-empty .daily-list,
  body[data-mobile-view="travel"] #travelFollowupInbox.is-empty .travel-followup-list{min-height:190px;display:grid;align-items:center}
  body[data-mobile-view="schedule"] #upcomingCard.is-empty{min-height:260px}
  body[data-mobile-view="schedule"] #upcomingCard.is-empty .daily-list{min-height:170px;display:grid;align-items:center}
  .empty-state{padding:18px 12px}
  .empty-state-icon{width:40px;height:40px;border-radius:14px}
  .empty-state strong{font-size:13.5px}
  .empty-state>span:last-child{font-size:12px}
}

/* A8.11 · Home + Memo information architecture */
.desktop-nav{display:flex;align-items:center;gap:5px;margin:-7px 0 18px;padding:5px;width:max-content;max-width:100%;border:1px solid #dce4eb;border-radius:16px;background:rgba(251,252,253,.78);box-shadow:0 7px 22px rgba(42,61,82,.045)}
.desktop-nav button{background:transparent;color:#728095;padding:8px 12px;border-radius:11px;font-size:12px;font-weight:760}
.desktop-nav button[aria-current="page"]{background:var(--accent-soft);color:var(--accent-strong)}
.home-view{display:grid;gap:14px}
.home-via-card,.home-upcoming-card,.memo-view{background:rgba(251,252,253,.94);border:1px solid rgba(214,224,233,.98);border-radius:26px;box-shadow:var(--shadow)}
.home-via-card{padding:24px 25px;background:linear-gradient(145deg,rgba(236,242,248,.98),rgba(250,252,253,.96))}
.home-via-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.home-via-head h2{font-size:25px;margin-top:7px;color:#34475d}.home-date{font-size:11.5px;font-weight:760;color:#748399;white-space:nowrap;padding-top:2px}
.home-via-card p{margin:15px 0 0;font-size:14px;line-height:1.65;color:#5d6c7e;letter-spacing:-.01em}
.home-upcoming-card{padding:20px}.home-upcoming-list{display:grid;gap:8px;margin-top:13px}.home-upcoming-item{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:12px 13px;border:1px solid #e0e7ed;border-radius:16px;background:rgba(255,255,255,.78)}
.home-upcoming-index{width:27px;height:27px;border-radius:10px;display:grid;place-items:center;background:var(--accent-soft);color:var(--accent-strong);font-size:11px;font-weight:850}.home-upcoming-item>div{display:grid;gap:3px;min-width:0}.home-upcoming-item strong{font-size:13.5px;line-height:1.35}.home-upcoming-item small{font-size:11.5px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.home-status-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.home-status-card{min-width:0;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:11px;text-align:left;padding:15px 16px;background:rgba(251,252,253,.92);border:1px solid #dce4eb;border-radius:20px;color:var(--ink);box-shadow:0 8px 24px rgba(42,61,82,.045)}.home-status-icon{width:38px;height:38px;border-radius:13px;background:var(--accent-soft);color:var(--accent-strong);display:grid;place-items:center}.home-status-icon svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.home-status-card>span:nth-child(2){display:grid;gap:2px}.home-status-card strong{font-size:13px}.home-status-card small{font-size:11px;color:var(--muted)}.home-status-card b{font-size:19px;color:#667b93}
.memo-view{padding:22px}.memo-head h2{font-size:26px;margin-top:6px}.memo-head p{font-size:12.5px;line-height:1.55;color:var(--muted);margin:7px 0 0}.memo-search{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;margin-top:18px}.memo-search input{min-width:0;border:1px solid #d8e1e9;border-radius:14px;background:#fbfcfd;color:var(--ink);padding:12px 13px;font:inherit;font-size:13px;outline:none}.memo-search input:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(99,134,173,.11)}.memo-search button{padding:10px 14px}.memo-filter-row{display:flex;align-items:center;gap:7px;margin:12px 0}.memo-filter{padding:7px 10px;border:1px solid #dce4eb;background:#f8fafc;color:#758397;border-radius:999px;font-size:11px;font-weight:780}.memo-filter.selected{background:var(--accent-soft);border-color:#d5e2ee;color:var(--accent-strong)}.memo-count{margin-left:auto;font-size:11px;color:var(--muted);font-weight:700}.memo-list{display:grid;gap:9px}.memo-item{border:1px solid #dfe6ec;background:rgba(255,255,255,.82);border-radius:17px;padding:14px 14px 11px}.memo-item-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.memo-item-head>div{display:grid;gap:2px;min-width:0}.memo-item-head strong{font-size:13.5px;line-height:1.35;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.memo-item-head small{font-size:10.5px;color:var(--muted)}.memo-item p{font-size:12.5px;line-height:1.6;color:#4f5d6e;margin:10px 0 0;white-space:pre-wrap;word-break:keep-all;overflow-wrap:break-word}.memo-pin{width:32px;height:32px;display:grid;place-items:center;background:#f1f4f7;color:#8090a3;font-size:19px;border-radius:11px}.memo-pin.selected{background:var(--accent-soft);color:var(--accent-strong)}.memo-tags{display:flex;flex-wrap:wrap;gap:5px;margin-top:10px}.memo-tags span{font-size:10px;color:#647992;background:#eef3f8;border-radius:999px;padding:4px 7px}.memo-actions{display:flex;justify-content:flex-end;margin-top:7px}.memo-actions button{font-size:10.5px;padding:5px 6px}.memo-quick-save{color:var(--accent-strong);background:var(--accent-soft)}

/* App views are real pages on both desktop and mobile. */
body[data-desktop-view] #homeView,body[data-desktop-view] #captureHome,body[data-desktop-view] .daily-grid,body[data-desktop-view] #travelFollowupInbox,body[data-desktop-view] #memoView{display:none!important}
body[data-desktop-view="home"] #homeView{display:grid!important}
body[data-desktop-view="capture"] #captureHome{display:block!important}
body[data-desktop-view="capture"] #preview:not([hidden]),body[data-desktop-view="capture"] #result:not([hidden]){display:block!important}
body[data-desktop-view="schedule"] .daily-grid{display:block!important;margin-top:0}body[data-desktop-view="schedule"] #upcomingCard{display:block!important}body[data-desktop-view="schedule"] #reviewCard{display:none!important}
body[data-desktop-view="review"] .daily-grid{display:block!important;margin-top:0}body[data-desktop-view="review"] #reviewCard{display:block!important}body[data-desktop-view="review"] #upcomingCard{display:none!important}
body[data-desktop-view="memo"] #memoView{display:block!important}
body[data-desktop-view="travel"] #travelFollowupInbox{display:block!important;margin-top:0}
body[data-desktop-view]:not([data-desktop-view="capture"]) #preview,body[data-desktop-view]:not([data-desktop-view="capture"]) #result{display:none!important}

@media(max-width:720px){
  .desktop-nav{display:none}
  .mobile-nav{grid-template-columns:repeat(5,1fr);padding:7px 6px}
  .mobile-nav button{min-width:0;padding-left:2px;padding-right:2px}.mobile-nav button .nav-icon{width:34px;height:34px;border-radius:12px}.mobile-nav svg{width:21px;height:21px}.mobile-nav button>span:last-child{font-size:10.5px}
  .home-view{gap:11px}.home-via-card,.home-upcoming-card,.memo-view{border-radius:24px}.home-via-card{padding:19px 18px}.home-via-head h2{font-size:22px;line-height:1.2}.home-date{font-size:10.5px}.home-via-card p{font-size:12.5px;line-height:1.6;margin-top:12px}.home-upcoming-card{padding:17px}.home-upcoming-item{padding:11px 12px}.home-upcoming-item strong{font-size:13px}.home-upcoming-item small{font-size:11px}.home-status-grid{gap:8px}.home-status-card{padding:12px 11px;grid-template-columns:auto minmax(0,1fr);gap:8px}.home-status-icon{width:34px;height:34px;border-radius:12px}.home-status-card b{grid-column:2;font-size:13px;color:var(--accent-strong)}.home-status-card small{font-size:10px}.home-status-card strong{font-size:12px}
  .memo-view{padding:18px}.memo-head h2{font-size:24px}.memo-head p{font-size:11.5px}.memo-search{grid-template-columns:1fr}.memo-search button{display:none}.memo-item{padding:13px}.memo-item p{font-size:12.5px}

  /* Override the A8.10 four-view rules with A8.11 five-tab IA. */
  body[data-mobile-view] #homeView,body[data-mobile-view] #captureHome,body[data-mobile-view] .daily-grid,body[data-mobile-view] #travelFollowupInbox,body[data-mobile-view] #memoView{display:none!important}
  body[data-mobile-view="home"] #homeView{display:grid!important}
  body[data-mobile-view="capture"] #captureHome{display:block!important}
  body[data-mobile-view="schedule"] .daily-grid{display:block!important;margin-top:0}body[data-mobile-view="schedule"] #upcomingCard{display:block!important}body[data-mobile-view="schedule"] #reviewCard{display:none!important}
  body[data-mobile-view="review"] .daily-grid{display:block!important;margin-top:0}body[data-mobile-view="review"] #reviewCard{display:block!important}body[data-mobile-view="review"] #upcomingCard{display:none!important}
  body[data-mobile-view="memo"] #memoView{display:block!important}
  body[data-mobile-view="travel"] #travelFollowupInbox{display:block!important;margin-top:0}
  body[data-mobile-view]:not([data-mobile-view="capture"]) #preview,body[data-mobile-view]:not([data-mobile-view="capture"]) #result{display:none!important}
}

/* Prevent pre-hydration memo flash; active view rules use !important. */
.memo-view{display:none}

/* A8.12 · Integrated RC · Weather + Final Brand on A8.11 IA */
.home-weather-context{display:inline-flex;align-items:center;gap:7px;margin-top:12px;padding:7px 10px;border:1px solid #dce5ed;border-radius:999px;background:rgba(247,249,252,.88);color:#617186;font-size:12px;line-height:1.25}
.home-weather-context[hidden]{display:none!important}.home-weather-icon{display:grid;place-items:center;width:20px;height:20px;border-radius:8px;background:var(--accent-soft);color:var(--accent-strong);font-size:13px;font-weight:700}.home-weather-context.is-attention{border-color:#ccd7ea;background:#f0f3f9;color:#526eaa}.home-weather-context.is-attention .home-weather-icon{background:#dfe7f5;color:var(--accent-strong)}
:root{--accent:#6f8bc7;--accent-strong:#5E7FBF;--accent-soft:#e9eef8;--selector-domain:#5E7FBF;--selector-detail:#718bc2;--selector-management:#8397bf}
body{background:radial-gradient(circle at 88% 0%,rgba(94,127,191,.085),transparent 34rem),linear-gradient(180deg,#f6f8fa 0%,var(--paper) 68%)}
.primary{background:var(--accent-strong)}
.integration-button small,.text-action,.project-result strong{color:var(--accent-strong)}
.mobile-nav button[aria-current="page"] .nav-icon{background:var(--accent-soft);color:var(--accent-strong);box-shadow:inset 0 0 0 1px rgba(94,127,191,.10)}
.mobile-nav button[aria-current="page"]>span:last-child{color:var(--accent-strong)}
.home-status-card:focus-visible,.home-status-card:hover{border-color:#ccd7ea}.home-status-card b{color:var(--accent-strong)}
.memo-search input:focus{border-color:var(--accent-strong);box-shadow:0 0 0 3px rgba(94,127,191,.12)}
.login-card input:focus{border-color:var(--accent-strong);box-shadow:0 0 0 3px rgba(94,127,191,.12)}
.brand-lockup{display:flex;align-items:center;gap:8px}.brand-symbol{width:22px;height:22px;border-radius:7px;display:block;box-shadow:0 3px 10px rgba(58,78,115,.10)}.login-brand-symbol{width:48px;height:48px;border-radius:15px;display:block;margin-bottom:14px;box-shadow:0 8px 24px rgba(58,78,115,.12)}
@media(max-width:720px){.home-weather-context{margin-top:10px;padding:7px 9px;font-size:11.5px}.home-weather-icon{width:19px;height:19px;font-size:12px}.brand-symbol{width:20px;height:20px;border-radius:6px}.brand-lockup{gap:7px}}


/* A8.12.1 · Desktop-only navigation balance */
@media (min-width:721px){
  .desktop-nav{
    display:grid;
    grid-template-columns:repeat(5,minmax(0,1fr));
    gap:6px;
    width:min(560px,100%);
    margin:-4px 0 22px;
    padding:7px;
    border-radius:18px;
  }
  .desktop-nav button{
    min-height:44px;
    padding:10px 16px;
    border-radius:12px;
    font-size:13.5px;
    font-weight:780;
    letter-spacing:-.01em;
  }
}


/* A8.12.2 · Schedule View · type filters + temporal groups */
.schedule-filter-shell{display:grid;gap:8px;margin:2px 0 15px}.schedule-filters,.schedule-culture-filters{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.schedule-filter,.schedule-culture-filter{border:1px solid #dce4eb;background:#f8fafc;color:#6f7f93;border-radius:999px;padding:7px 11px;font-size:11.5px;font-weight:780;line-height:1.2}.schedule-filter.selected,.schedule-culture-filter.selected{background:var(--accent-soft);border-color:#d2deed;color:var(--accent-strong)}.schedule-culture-filters{padding-top:1px}.schedule-culture-filter{font-size:10.8px;padding:6px 9px;background:#fbfcfd}.schedule-group-list{gap:12px}.schedule-section{display:grid;gap:8px}.schedule-section+.schedule-section{padding-top:3px}.schedule-section-toggle,.schedule-section-static{width:100%;display:flex;align-items:center;gap:8px;min-height:34px;padding:4px 3px;background:transparent;color:#5f6f84;text-align:left;border-radius:10px}.schedule-section-toggle:hover{background:#f3f6fa}.schedule-section-toggle span:first-child,.schedule-section-static span:first-child{font-size:12px;font-weight:850;letter-spacing:-.01em;color:#53667f}.schedule-section-toggle b,.schedule-section-static b{display:grid;place-items:center;min-width:22px;height:22px;padding:0 6px;border-radius:999px;background:var(--accent-soft);color:var(--accent-strong);font-size:10px}.schedule-chevron{margin-left:auto;font-size:16px;line-height:1;color:#8290a3;transition:transform .15s ease}.schedule-section-toggle[aria-expanded="false"] .schedule-chevron{transform:rotate(-90deg)}.schedule-section-body{display:grid;gap:8px}.schedule-section-body[hidden]{display:none!important}.schedule-section-empty{padding:7px 3px 4px;color:#9aa6b4;font-size:11.5px}.schedule-title-row{display:flex;align-items:center;gap:8px;min-width:0}.schedule-title-row strong{min-width:0}.schedule-type-badge{flex:none;display:inline-flex;align-items:center;max-width:128px;padding:4px 7px;border-radius:8px;background:#eef2f8;color:var(--accent-strong);font-size:9.8px;font-weight:820;line-height:1.15;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.schedule-item{align-items:center}
@media(max-width:720px){.schedule-filter-shell{margin:0 0 13px}.schedule-filters,.schedule-culture-filters{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;margin-left:-1px;padding:1px 1px 3px}.schedule-filters::-webkit-scrollbar,.schedule-culture-filters::-webkit-scrollbar{display:none}.schedule-filter,.schedule-culture-filter{flex:none}.schedule-title-row{align-items:flex-start;gap:7px}.schedule-type-badge{max-width:106px;font-size:9.5px;padding:4px 6px}.schedule-section-toggle,.schedule-section-static{min-height:32px}.schedule-section-toggle span:first-child,.schedule-section-static span:first-child{font-size:11.5px}}

.home-upcoming-title-row{display:flex;align-items:center;gap:7px;min-width:0}.home-schedule-type{flex:none;display:inline-flex;align-items:center;max-width:110px;padding:3px 6px;border-radius:7px;background:#eef2f8;color:var(--accent-strong);font-size:9px;font-weight:820;line-height:1.15;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.home-upcoming-title-row strong{min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@media(max-width:720px){.home-schedule-type{max-width:92px;font-size:8.8px}.home-upcoming-title-row{gap:6px}}


/* A8.12.3 · Desktop Unified Workspace + readable desktop typography */
.desktop-copy{display:none}.mobile-copy{display:inline}
.schedule-subfilters{display:flex;align-items:center;gap:7px;flex-wrap:wrap;padding-top:1px}
.schedule-subfilter{border:1px solid #dce4eb;background:#fbfcfd;color:#6f7f93;border-radius:999px;padding:6px 9px;font-size:10.8px;font-weight:780;line-height:1.2}
.schedule-subfilter.selected{background:var(--accent-soft);border-color:#d2deed;color:var(--accent-strong)}
@media(max-width:720px){.schedule-subfilters{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;margin-left:-1px;padding:1px 1px 3px}.schedule-subfilters::-webkit-scrollbar{display:none}.schedule-subfilter{flex:none}.desktop-copy{display:none}.mobile-copy{display:inline}}

@media(min-width:721px){
  :root{--type-xs:12.5px;--type-sm:14px;--type-body:15.5px;--type-control:15px;--type-section:23px;--type-display:30px}
  body{background:radial-gradient(circle at 88% 0%,rgba(94,127,191,.09),transparent 42rem),linear-gradient(180deg,#f7f9fb 0%,#f0f4f8 74%)}
  .shell{width:min(1240px,calc(100% - 48px));padding:26px 0 52px;display:grid;grid-template-columns:minmax(0,7fr) minmax(330px,5fr);grid-template-areas:"topbar topbar" "via via" "schedule capture" "schedule memo" "review travel" "preview preview" "result result";gap:18px 18px;align-items:start}
  .topbar{grid-area:topbar;margin:0 4px 0;align-items:center}.brand-symbol{width:27px;height:27px;border-radius:8px}.eyebrow{font-size:12.5px}.tagline{font-size:14.5px;margin-top:5px}.version-tag{font-size:12px}.status-dot{width:12px;height:12px}
  .desktop-nav{display:none!important}
  body[data-desktop-view] #homeView{display:contents!important}body[data-desktop-view] .daily-grid{display:contents!important}body[data-desktop-view] #captureHome{display:block!important}body[data-desktop-view] #memoView{display:block!important}body[data-desktop-view] #travelFollowupInbox{display:block!important}body[data-desktop-view] #upcomingCard,body[data-desktop-view] #reviewCard{display:block!important}
  body[data-desktop-view]:not([data-desktop-view="capture"]) #preview:not([hidden]),body[data-desktop-view]:not([data-desktop-view="capture"]) #result:not([hidden]){display:block!important}
  .home-view{display:contents!important}.home-upcoming-card,.home-status-grid{display:none!important}.home-via-card{grid-area:via;position:relative;overflow:hidden;min-height:190px;padding:30px 34px;display:flex;flex-direction:column;justify-content:center;border-radius:28px;background-color:#eaf0f7;background-repeat:no-repeat;background-size:cover;background-position:center}.home-via-card::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(244,248,252,.98) 0%,rgba(244,248,252,.91) 42%,rgba(244,248,252,.47) 75%,rgba(244,248,252,.66) 100%);pointer-events:none}.home-via-card>*{position:relative;z-index:1}.home-via-card[data-scene="clear"]{background-image:url('/scenes/clear.svg')}.home-via-card[data-scene="cloud"]{background-image:url('/scenes/cloud.svg')}.home-via-card[data-scene="rain"]{background-image:url('/scenes/rain.svg')}.home-via-card[data-scene="night"]{background-image:url('/scenes/night.svg')}.home-via-head h2{font-size:32px;line-height:1.15;margin-top:9px;max-width:720px}.home-date{font-size:13px}.home-via-card p{font-size:16px;line-height:1.6;margin-top:15px;max-width:760px}.home-weather-context{font-size:13.5px;padding:8px 12px;width:max-content}
  .daily-grid{display:contents!important}.daily-card{padding:24px;border-radius:24px;min-height:0}.daily-card-head{margin-bottom:16px}.daily-card-head h2{font-size:23px}.daily-item,.review-item{padding:15px 16px;border-radius:17px}.daily-item strong,.review-item strong{font-size:15.5px}.daily-item small,.review-item small{font-size:14px}.source-empty,.review-copy p,.travel-empty{font-size:14px}
  #upcomingCard{grid-area:schedule;align-self:stretch}#reviewCard{grid-area:review}.capture-first{grid-area:capture;margin:0;padding:24px;border-radius:24px}.memo-view{grid-area:memo;margin:0;padding:22px;border-radius:24px}.travel-followup-inbox{grid-area:travel;margin:0;padding:22px;border-radius:24px;background:rgba(251,252,253,.92);border-color:#dae3ea;box-shadow:var(--shadow)}
  .desktop-copy{display:inline}.mobile-copy{display:none}.capture-first-head{gap:12px}.capture-first h2{font-size:24px;margin-top:6px}.capture-first-note{font-size:12px;padding:6px 9px}.capture-first textarea{font-size:15.5px;line-height:1.55;min-height:78px;max-height:118px;overflow-y:auto;padding:12px 1px 7px}.capture-actions{margin-top:10px}.capture-actions button{min-height:42px}.capture-imports{margin-top:13px;padding:12px}.quick-import-actions{gap:7px}.quick-import-actions .integration-button{min-height:62px;padding:10px 9px;font-size:13px}.quick-import-actions .integration-button small{font-size:11px}.classification-details{margin-top:13px;padding-top:11px}.hint{font-size:12px;margin-top:9px}
  .memo-head h2{font-size:23px}.memo-head p{font-size:13.5px}.memo-search input{font-size:14px}.memo-filter{font-size:12.5px}.memo-count{font-size:12.5px}.memo-list{max-height:330px;overflow:auto;padding-right:2px}.memo-item-head strong{font-size:15px}.memo-item-head small{font-size:12px}.memo-item p{font-size:14px}.memo-tags span{font-size:11px}
  .schedule-filter-shell{gap:9px;margin-bottom:18px}.schedule-filters,.schedule-subfilters{gap:8px}.schedule-filter{font-size:13.5px;padding:8px 13px}.schedule-subfilter{font-size:12.5px;padding:7px 11px}.schedule-section-toggle span:first-child,.schedule-section-static span:first-child{font-size:15px}.schedule-section-toggle b,.schedule-section-static b{font-size:11px;min-width:24px;height:24px}.schedule-section-empty{font-size:13.5px}.schedule-title-row{gap:9px}.schedule-type-badge{max-width:170px;font-size:11.5px;padding:5px 8px}.schedule-group-list{gap:14px}.schedule-section-body{gap:10px}
  .travel-inbox-title{font-size:18px}.travel-followup-main strong{font-size:15px}.travel-followup-main small{font-size:13px}.travel-state-badge{font-size:11px}.travel-followup-actions button{font-size:13px}.travel-empty{padding:8px 1px}
  #reviewList{max-height:360px;overflow:auto;padding-right:2px}.review-actions button,.review-project-search button,.guard-box button{font-size:13px}
  #preview:not([hidden]){grid-area:preview;position:fixed;right:28px;top:82px;z-index:90;width:min(520px,calc(100vw - 56px));max-height:calc(100dvh - 110px);overflow:auto;margin:0;border-radius:24px;box-shadow:0 24px 70px rgba(35,50,70,.22)}#result:not([hidden]){grid-area:result;position:fixed;right:36px;bottom:28px;z-index:95;width:min(480px,calc(100vw - 72px));margin:0;box-shadow:0 18px 50px rgba(35,50,70,.18)}
}
@media(min-width:721px) and (max-width:980px){.shell{width:min(820px,calc(100% - 36px));grid-template-columns:1fr;grid-template-areas:"topbar" "via" "schedule" "capture" "memo" "review" "travel" "preview" "result"}.home-via-card{min-height:170px}.memo-list,#reviewList{max-height:none}}

/* A8.12.4 · Desktop Visual Polish · preserve mobile IA and 7:5 workspace */
@media(min-width:981px){
  :root{--type-xs:13.5px;--type-sm:15px;--type-body:16.5px;--type-control:16px;--type-section:25px;--type-display:34px}
  .shell{width:min(1280px,calc(100% - 56px));gap:20px 20px;padding-top:30px}
  .topbar{margin:0 6px 2px;min-height:48px}.brand-lockup{gap:10px}.brand-symbol{width:31px;height:31px;border-radius:9px}.topbar .eyebrow{font-size:14px;letter-spacing:.145em}.brand-by{letter-spacing:.11em}.tagline{font-size:15.5px;line-height:1.4;margin-top:6px;color:#5c6878}.version-tag{font-size:13.5px}.status-dot{width:12px;height:12px}
  .home-via-card{min-height:205px;padding:34px 38px;border-radius:30px;background-position:center 54%}
  .home-via-card::before{background:linear-gradient(90deg,rgba(244,248,252,.94) 0%,rgba(244,248,252,.84) 38%,rgba(244,248,252,.28) 72%,rgba(244,248,252,.39) 100%)}
  .home-via-head .eyebrow{font-size:13.5px}.home-via-head h2{font-size:34px;line-height:1.14;margin-top:10px}.home-date{font-size:14.5px;font-weight:720}.home-via-card p{font-size:17px;line-height:1.62;margin-top:16px}.home-weather-context{font-size:14.5px;padding:9px 13px}
  .daily-card{padding:27px 28px;border-radius:26px}.daily-card-head{margin-bottom:19px}.daily-card-head .eyebrow,.capture-first .eyebrow,.memo-view .eyebrow,.travel-followup-inbox .eyebrow{font-size:13px}.daily-card-head h2,.memo-head h2{font-size:25px;line-height:1.22}.text-action{font-size:13.5px}
  .schedule-filter-shell{gap:10px;margin-bottom:20px}.schedule-filters,.schedule-subfilters{gap:9px}.schedule-filter{font-size:14.5px;padding:9px 14px}.schedule-subfilter{font-size:13.5px;padding:8px 12px}.schedule-section-toggle span:first-child,.schedule-section-static span:first-child{font-size:16px}.schedule-section-toggle b,.schedule-section-static b{font-size:12px;min-width:26px;height:26px}.schedule-section-empty{font-size:14.5px}.schedule-group-list{gap:16px}.schedule-section-body{gap:11px}
  .daily-item,.review-item{padding:17px 18px;border-radius:18px}.daily-item strong,.review-item strong{font-size:17px;line-height:1.42}.daily-item small,.review-item small{font-size:15px;line-height:1.45}.schedule-type-badge{max-width:190px;font-size:12.5px;padding:6px 9px}.review-copy p{font-size:15px;line-height:1.52}.source-empty,.travel-empty{font-size:15px}
  .capture-first{padding:27px 28px;border-radius:26px}.capture-first-head{gap:14px;align-items:flex-start}.capture-first h2{font-size:26px;line-height:1.2;margin-top:7px}.capture-first-note{font-size:12.5px;padding:7px 10px}.capture-first textarea{font-size:16.5px;line-height:1.55;min-height:94px;max-height:126px;overflow-y:auto;padding:15px 16px;border:1px solid #dfe6ef;border-radius:16px;background:rgba(248,250,253,.86);box-shadow:inset 0 1px 0 rgba(255,255,255,.9)}.capture-first textarea:focus{border-color:#aebfde;box-shadow:0 0 0 3px rgba(94,127,191,.10)}.capture-actions{gap:9px;margin-top:12px}.capture-actions button{min-height:44px;font-size:14px;padding:11px 15px}.capture-actions .primary{background:var(--accent-strong)}.capture-actions .ghost{background:#eef2f8;color:#43536c}.capture-imports{margin-top:14px;padding:13px;border-radius:17px;background:#f8fafc}.quick-import-actions{gap:8px}.quick-import-actions .integration-button{min-height:66px;padding:11px 10px;font-size:14px;background:#f0f4f9}.quick-import-actions .integration-button small{font-size:11.5px;line-height:1.35;margin-top:3px}.classification-details{margin-top:14px;padding-top:12px}.classification-details summary{font-size:14px}.hint{font-size:13px;margin-top:10px}
  .memo-view{padding:25px 26px;border-radius:26px}.memo-head p{font-size:14.5px;line-height:1.55}.memo-search input{font-size:15px;padding-top:12px;padding-bottom:12px}.memo-filter,.memo-count{font-size:13.5px}.memo-item-head strong{font-size:16.5px}.memo-item-head small{font-size:13px}.memo-item p{font-size:15px;line-height:1.52}.memo-tags span{font-size:12px}
  .travel-followup-inbox{padding:25px 26px;border-radius:26px}.travel-inbox-title{font-size:20px}.travel-followup-main strong{font-size:16.5px}.travel-followup-main small{font-size:14px}.travel-state-badge{font-size:12px}.travel-followup-actions button{font-size:14px}
  #reviewCard,#travelFollowupInbox{min-height:248px;align-self:stretch}#reviewCard{display:flex!important;flex-direction:column}#reviewList{flex:1;display:grid;align-content:start}#reviewCard.is-empty #reviewList{align-content:center}.travel-followup-inbox{display:flex!important;flex-direction:column}.travel-followup-list{flex:1}.travel-followup-list:has(.empty-state){display:grid;align-content:center}.empty-state{padding:26px 16px 22px}.empty-state-icon{width:46px;height:46px;border-radius:16px}.empty-state strong{font-size:16px}.empty-state>span:last-child{font-size:14.5px}
}


/* A8.12.6 · Density & Alignment Polish · no structural changes */
@media(min-width:981px){
  /* Stronger workspace header presence without changing the compact shell. */
  .topbar{min-height:54px;margin-bottom:4px}
  .brand-symbol{width:34px;height:34px;border-radius:10px}
  .topbar .eyebrow{font-size:15.5px;letter-spacing:.14em}
  .tagline{font-size:16px;margin-top:7px}
  .version-tag{font-size:14px}
  .app-state{gap:11px}

  /* Let the time/weather scene read more clearly; keep the copy side protected. */
  .home-via-card{background-position:center 58%}
  .home-via-card::before{background:linear-gradient(90deg,rgba(244,248,252,.91) 0%,rgba(244,248,252,.73) 38%,rgba(244,248,252,.13) 72%,rgba(244,248,252,.24) 100%)}
  .home-date{padding:6px 9px;border:1px solid rgba(215,225,237,.72);border-radius:999px;background:rgba(248,250,253,.62);backdrop-filter:blur(5px);color:#63748b}

  /* Quick Capture: primary actions remain prominent; secondary imports become a compact toolbar. */
  .capture-imports{margin-top:12px;padding:0;border:0;background:transparent;box-shadow:none}
  .quick-import-actions{display:flex;grid-template-columns:none;justify-content:flex-end;gap:8px}
  #directInputBtn{display:none}
  .quick-import-actions .integration-button{width:auto;min-height:38px;padding:8px 12px;border:1px solid #dfe6ef;border-radius:999px;background:#f2f5f9;display:inline-flex;align-items:center;justify-content:center;gap:5px;font-size:13.5px;font-weight:760}
  .quick-import-actions .integration-button small{display:none}
  .quick-import-actions .integration-button:hover{background:#eaf0f7;border-color:#d2ddea}
  .source-panel{margin-top:10px}
}


/* A8.12.6 · Desktop Density & Alignment Polish · structural grid remains frozen */
@media(min-width:981px){
  /* Closer to the approved concept: scene is a real visual layer, not a faint watermark. */
  .home-via-card{background-position:center 61%}
  .home-via-card::before{background:linear-gradient(90deg,rgba(244,248,252,.88) 0%,rgba(244,248,252,.63) 35%,rgba(244,248,252,.10) 66%,rgba(244,248,252,.13) 100%)}

  /* Give the capture title and working input a deliberate breathing interval. */
  .capture-first-head{margin-bottom:18px}
  .capture-actions{gap:8px;margin-top:12px;align-items:center;flex-wrap:nowrap}
  .capture-actions>button{min-height:42px!important;padding:10px 13px!important;font-size:14px!important;line-height:1.2!important;font-weight:760!important}
  .capture-actions .integration-button{width:auto;border:0;border-radius:14px;background:#eef2f8;color:#43536c;display:inline-flex;align-items:center;justify-content:center;gap:4px}
  .capture-actions .integration-button small{display:none}
  .capture-actions .integration-button span{font-size:inherit;font-weight:inherit;line-height:inherit}
  .capture-imports{margin-top:0;padding:0;border:0;background:transparent;box-shadow:none}
  .capture-imports .quick-import-actions{min-height:0}
  .capture-imports:has(.source-panel:not([hidden])){margin-top:10px}

  /* Upcoming refresh becomes a quiet utility icon anchored to the card corner. */
  #upcomingCard{position:relative}
  #upcomingCard .daily-card-head{padding-right:42px}
  .refresh-icon-action{position:absolute;top:20px;right:20px;width:34px;height:34px;padding:0;display:grid;place-items:center;border:1px solid transparent;border-radius:11px;background:transparent;color:#71839a}
  .refresh-icon-action:hover{background:#eef3f8;border-color:#dce5ef;color:var(--accent-strong)}
  .refresh-icon-action svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}

  /* Memo copy is onboarding text; desktop workspace uses the space for actual recall content. */
  .memo-head p{display:none}
  .memo-search{margin-top:13px}
  .memo-list{max-height:420px}
}

/* A8.12.7 · Day/Night × Weather Hero System · shared desktop/mobile context */
.home-via-card{
  position:relative;
  overflow:hidden;
  isolation:isolate;
  background-color:#eaf0f7;
  background-image:none!important;
  --hero-image:none;
  --hero-position:center center;
  --hero-filter:none;
  --hero-opacity:.96;
  --hero-overlay:linear-gradient(90deg,rgba(244,248,252,.97) 0%,rgba(244,248,252,.91) 46%,rgba(244,248,252,.66) 72%,rgba(244,248,252,.48) 100%);
}
.home-via-card::before{
  content:"";
  position:absolute;
  inset:-2px;
  z-index:0;
  pointer-events:none;
  background-image:var(--hero-image)!important;
  background-repeat:no-repeat;
  background-size:cover;
  background-position:var(--hero-position);
  filter:var(--hero-filter);
  opacity:var(--hero-opacity);
  transform:scale(1.01);
}
.home-via-card::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  pointer-events:none;
  background:var(--hero-overlay);
}
.home-via-card>*{position:relative;z-index:2}

.home-via-card[data-scene="day-clear"]{--hero-image:url('/scenes/hero_day_clear.webp');--hero-position:center 52%;--hero-filter:saturate(.82) brightness(1.04);--hero-opacity:.96}
.home-via-card[data-scene="day-cloudy"]{--hero-image:url('/scenes/hero_day_cloudy.webp');--hero-position:center 52%;--hero-filter:saturate(.66) brightness(1.02);--hero-opacity:.95}
.home-via-card[data-scene="day-rain"]{--hero-image:url('/scenes/hero_day_rain.webp');--hero-position:center 48%;--hero-filter:saturate(.60) brightness(1.12);--hero-opacity:.93}
.home-via-card[data-scene="day-snow"]{--hero-image:url('/scenes/hero_day_snow.webp');--hero-position:center 48%;--hero-filter:saturate(.72) brightness(1.05);--hero-opacity:.98}
.home-via-card[data-scene="day-storm"]{--hero-image:url('/scenes/hero_day_storm.webp');--hero-position:center 48%;--hero-filter:saturate(.48) brightness(.80) contrast(1.10);--hero-opacity:.96;--hero-overlay:linear-gradient(90deg,rgba(239,244,250,.97) 0%,rgba(239,244,250,.90) 43%,rgba(223,232,244,.51) 72%,rgba(55,75,103,.22) 100%)}

.home-via-card[data-scene="night-clear"]{--hero-image:url('/scenes/hero_night_clear.webp');--hero-position:center 52%;--hero-filter:saturate(.82) brightness(.92);--hero-opacity:1;--hero-overlay:linear-gradient(90deg,rgba(31,48,72,.82) 0%,rgba(31,48,72,.65) 43%,rgba(31,48,72,.20) 74%,rgba(31,48,72,.08) 100%)}
.home-via-card[data-scene="night-cloudy"]{--hero-image:url('/scenes/hero_night_cloudy.webp');--hero-position:center 52%;--hero-filter:saturate(.52) brightness(.67) contrast(.96);--hero-opacity:1;--hero-overlay:linear-gradient(90deg,rgba(38,52,72,.86) 0%,rgba(38,52,72,.69) 43%,rgba(38,52,72,.28) 74%,rgba(38,52,72,.15) 100%)}
.home-via-card[data-scene="night-rain"]{--hero-image:url('/scenes/hero_night_rain.webp');--hero-position:center 48%;--hero-filter:saturate(.72) brightness(.72);--hero-opacity:1;--hero-overlay:linear-gradient(90deg,rgba(30,45,65,.87) 0%,rgba(30,45,65,.68) 43%,rgba(30,45,65,.26) 74%,rgba(30,45,65,.12) 100%)}
.home-via-card[data-scene="night-snow"]{--hero-image:url('/scenes/hero_night_snow.webp');--hero-position:center 48%;--hero-filter:saturate(.48) brightness(.54) contrast(1.02);--hero-opacity:1;--hero-overlay:linear-gradient(90deg,rgba(38,53,76,.86) 0%,rgba(38,53,76,.66) 43%,rgba(38,53,76,.24) 74%,rgba(38,53,76,.12) 100%)}
.home-via-card[data-scene="night-storm"]{--hero-image:url('/scenes/hero_night_storm.webp');--hero-position:center 48%;--hero-filter:saturate(.55) brightness(.48) contrast(1.14);--hero-opacity:1;--hero-overlay:linear-gradient(90deg,rgba(21,33,50,.91) 0%,rgba(21,33,50,.74) 43%,rgba(21,33,50,.32) 74%,rgba(21,33,50,.17) 100%)}

.home-via-card[data-scene^="night-"] .eyebrow,
.home-via-card[data-scene^="night-"] .home-via-head h2,
.home-via-card[data-scene^="night-"] p{color:#f7f9fc}
.home-via-card[data-scene^="night-"] p{color:rgba(247,249,252,.90)}
.home-via-card[data-scene^="night-"] .home-date{border-color:rgba(255,255,255,.22);background:rgba(24,38,58,.34);color:rgba(255,255,255,.88);backdrop-filter:blur(6px)}
.home-via-card[data-scene^="night-"] .home-weather-context{border-color:rgba(255,255,255,.18);background:rgba(27,41,61,.43);color:rgba(255,255,255,.91);backdrop-filter:blur(7px)}
.home-via-card[data-scene^="night-"] .home-weather-icon{background:rgba(255,255,255,.16);color:#fff}

@media(max-width:720px){
  .home-via-card{min-height:196px;--hero-position:68% center;--hero-overlay:linear-gradient(90deg,rgba(244,248,252,.97) 0%,rgba(244,248,252,.92) 55%,rgba(244,248,252,.72) 82%,rgba(244,248,252,.62) 100%)}
  .home-via-card[data-scene^="night-"]{--hero-overlay:linear-gradient(90deg,rgba(30,45,66,.90) 0%,rgba(30,45,66,.79) 58%,rgba(30,45,66,.51) 84%,rgba(30,45,66,.39) 100%)}
  .home-via-card[data-scene="day-storm"]{--hero-overlay:linear-gradient(90deg,rgba(239,244,250,.98) 0%,rgba(239,244,250,.92) 56%,rgba(223,232,244,.72) 84%,rgba(74,91,116,.48) 100%)}
}
@media(min-width:981px){
  .home-via-card{--hero-overlay:linear-gradient(90deg,rgba(244,248,252,.94) 0%,rgba(244,248,252,.78) 37%,rgba(244,248,252,.20) 70%,rgba(244,248,252,.16) 100%)}
  .home-via-card[data-scene^="night-"]{--hero-overlay:linear-gradient(90deg,rgba(27,42,63,.84) 0%,rgba(27,42,63,.61) 38%,rgba(27,42,63,.15) 71%,rgba(27,42,63,.05) 100%)}
  .home-via-card[data-scene="day-storm"]{--hero-overlay:linear-gradient(90deg,rgba(239,244,250,.95) 0%,rgba(239,244,250,.80) 38%,rgba(223,232,244,.26) 71%,rgba(55,75,103,.13) 100%)}
}

/* A8.12.10 · Natural Weather FX: rain-on-glass + layered irregular snow */
.section-label-row{display:flex;align-items:center;gap:8px}

/* Weather sits above the image/copy-protection overlay and below all copy. */
.hero-weather-fx{
  position:absolute!important;
  inset:-12%!important;
  z-index:2!important;
  pointer-events:none!important;
  display:none;
  opacity:0;
  transform:translate3d(0,0,0);
  overflow:hidden;
  mask-image:linear-gradient(90deg,rgba(0,0,0,.10) 0%,rgba(0,0,0,.38) 34%,#000 61%,#000 100%);
  -webkit-mask-image:linear-gradient(90deg,rgba(0,0,0,.10) 0%,rgba(0,0,0,.38) 34%,#000 61%,#000 100%);
}
.hero-weather-fx::before,.hero-weather-fx::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
}
.home-via-card>*:not(.hero-weather-fx){z-index:3}

.home-via-card[data-scene="day-rain"]{--hero-filter:saturate(.60) brightness(.98) contrast(1.06)}
.home-via-card[data-scene="night-rain"]{--hero-filter:saturate(.69) brightness(.65) contrast(1.08)}
.home-via-card[data-scene="day-storm"]{--hero-filter:saturate(.43) brightness(.70) contrast(1.16)}
.home-via-card[data-scene="night-storm"]{--hero-filter:saturate(.49) brightness(.42) contrast(1.18)}
.home-via-card[data-scene="day-snow"]{--hero-filter:saturate(.64) brightness(1.00) contrast(1.04)}
.home-via-card[data-scene="night-snow"]{--hero-filter:saturate(.46) brightness(.57) contrast(1.06)}

/* Rain: no diagonal rain-stripe overlay. The scene is viewed through wet glass instead. */
.home-via-card[data-scene$="-rain"] .hero-weather-fx{
  display:block;
  opacity:.78;
  inset:-5%!important;
  filter:drop-shadow(0 1px 1px rgba(72,101,131,.10));
}
.home-via-card[data-scene$="-rain"] .hero-weather-fx::before{
  background-image:
    radial-gradient(ellipse 3px 5px at 70% 15%,rgba(249,253,255,.74) 0 34%,rgba(151,184,214,.32) 48%,transparent 68%),
    radial-gradient(ellipse 2px 4px at 75% 33%,rgba(249,253,255,.67) 0 33%,rgba(147,181,212,.29) 49%,transparent 69%),
    radial-gradient(ellipse 4px 7px at 82% 19%,rgba(250,253,255,.78) 0 32%,rgba(145,179,209,.34) 49%,transparent 69%),
    radial-gradient(ellipse 2.5px 5px at 86% 47%,rgba(246,251,255,.65) 0 35%,rgba(137,174,207,.27) 50%,transparent 70%),
    radial-gradient(ellipse 3.5px 6px at 91% 27%,rgba(251,254,255,.72) 0 34%,rgba(145,179,208,.31) 50%,transparent 70%),
    radial-gradient(ellipse 2px 4px at 94% 66%,rgba(247,252,255,.65) 0 34%,rgba(137,174,206,.26) 51%,transparent 71%),
    radial-gradient(ellipse 4px 8px at 78% 71%,rgba(247,252,255,.71) 0 31%,rgba(137,174,206,.30) 48%,transparent 69%),
    radial-gradient(ellipse 2px 3.5px at 67% 58%,rgba(249,253,255,.61) 0 34%,rgba(147,181,212,.25) 50%,transparent 70%),
    radial-gradient(ellipse 3px 5px at 88% 82%,rgba(249,253,255,.68) 0 34%,rgba(147,181,212,.27) 50%,transparent 70%),
    radial-gradient(ellipse 1.8px 3px at 97% 41%,rgba(249,253,255,.62) 0 34%,rgba(147,181,212,.24) 50%,transparent 70%);
  filter:blur(.08px);
  animation:heroGlassBreathe 9s ease-in-out infinite alternate;
}
.home-via-card[data-scene$="-rain"] .hero-weather-fx::after{
  background-image:
    radial-gradient(ellipse 1.3px 12px at 84% 39%,rgba(229,241,251,.34) 0 38%,rgba(109,153,191,.14) 52%,transparent 72%),
    radial-gradient(ellipse 1.1px 18px at 92% 52%,rgba(232,243,252,.30) 0 36%,rgba(109,153,191,.12) 53%,transparent 73%),
    radial-gradient(ellipse 1px 9px at 73% 63%,rgba(236,246,253,.27) 0 37%,rgba(119,160,196,.11) 52%,transparent 72%);
  opacity:.72;
  filter:blur(.2px);
}

/* Storm: the same wet-glass language, but denser beads, longer rivulets and reduced visibility. */
.home-via-card[data-scene$="-storm"] .hero-weather-fx{
  display:block;
  opacity:.94;
  inset:-5%!important;
  background:linear-gradient(180deg,rgba(24,43,65,.13),rgba(18,38,61,.24));
  backdrop-filter:blur(.35px);
}
.home-via-card[data-scene$="-storm"] .hero-weather-fx::before{
  background-image:
    radial-gradient(ellipse 4px 7px at 67% 13%,rgba(250,253,255,.78) 0 33%,rgba(133,170,204,.37) 49%,transparent 69%),
    radial-gradient(ellipse 3px 6px at 72% 31%,rgba(248,252,255,.73) 0 33%,rgba(127,166,202,.34) 49%,transparent 70%),
    radial-gradient(ellipse 5px 9px at 78% 20%,rgba(251,254,255,.80) 0 31%,rgba(126,164,200,.39) 48%,transparent 69%),
    radial-gradient(ellipse 3px 7px at 83% 43%,rgba(246,251,255,.72) 0 34%,rgba(121,160,198,.32) 50%,transparent 70%),
    radial-gradient(ellipse 4px 8px at 88% 26%,rgba(251,254,255,.76) 0 33%,rgba(126,164,200,.36) 50%,transparent 70%),
    radial-gradient(ellipse 3px 6px at 92% 62%,rgba(246,251,255,.70) 0 34%,rgba(120,159,196,.30) 51%,transparent 71%),
    radial-gradient(ellipse 5px 10px at 75% 72%,rgba(248,252,255,.76) 0 31%,rgba(122,161,198,.34) 48%,transparent 69%),
    radial-gradient(ellipse 3px 6px at 63% 56%,rgba(249,253,255,.67) 0 34%,rgba(127,166,202,.28) 50%,transparent 70%),
    radial-gradient(ellipse 4px 8px at 86% 84%,rgba(249,253,255,.72) 0 34%,rgba(127,166,202,.31) 50%,transparent 70%),
    radial-gradient(ellipse 3px 6px at 97% 38%,rgba(249,253,255,.68) 0 34%,rgba(127,166,202,.29) 50%,transparent 70%),
    radial-gradient(ellipse 2.5px 5px at 70% 86%,rgba(246,251,255,.64) 0 34%,rgba(120,159,196,.27) 51%,transparent 71%),
    radial-gradient(ellipse 2.5px 5px at 95% 76%,rgba(246,251,255,.66) 0 34%,rgba(120,159,196,.28) 51%,transparent 71%);
  filter:blur(.08px);
  animation:heroGlassBreathe 6.5s ease-in-out infinite alternate;
}
.home-via-card[data-scene$="-storm"] .hero-weather-fx::after{
  background-image:
    radial-gradient(ellipse 1.6px 22px at 80% 33%,rgba(230,242,252,.44) 0 38%,rgba(100,145,186,.18) 52%,transparent 72%),
    radial-gradient(ellipse 1.4px 31px at 90% 50%,rgba(232,243,252,.40) 0 36%,rgba(96,141,183,.17) 53%,transparent 73%),
    radial-gradient(ellipse 1.3px 18px at 72% 57%,rgba(234,245,253,.36) 0 37%,rgba(105,149,188,.15) 52%,transparent 72%),
    radial-gradient(ellipse 1.1px 25px at 96% 69%,rgba(229,242,252,.34) 0 37%,rgba(100,145,186,.14) 52%,transparent 72%);
  opacity:.88;
  filter:blur(.22px);
  animation:heroRivuletCreep 8s ease-in-out infinite alternate;
}

/* Snow: three depth layers with deliberately different spacing, size, speed and drift. */
.home-via-card[data-scene$="-snow"] .hero-weather-fx{
  display:block;
  opacity:.90;
  background-image:
    radial-gradient(circle at 72% 18%,rgba(255,255,255,.96) 0 4.7px,transparent 5.7px),
    radial-gradient(circle at 89% 28%,rgba(255,255,255,.90) 0 3.8px,transparent 4.7px),
    radial-gradient(circle at 80% 69%,rgba(255,255,255,.86) 0 3.1px,transparent 4px),
    radial-gradient(circle at 96% 57%,rgba(255,255,255,.82) 0 2.7px,transparent 3.6px),
    radial-gradient(circle at 66% 82%,rgba(255,255,255,.78) 0 2.4px,transparent 3.3px);
  filter:drop-shadow(0 1px 2px rgba(62,83,108,.15));
  animation:heroSnowNear 8.4s linear infinite;
}
.home-via-card[data-scene$="-snow"] .hero-weather-fx::before{
  background-image:
    radial-gradient(circle,rgba(255,255,255,.85) 0 1.9px,transparent 2.7px),
    radial-gradient(circle,rgba(237,246,255,.73) 0 1.25px,transparent 1.95px),
    radial-gradient(circle,rgba(255,255,255,.70) 0 1.55px,transparent 2.25px);
  background-size:73px 81px,47px 59px,101px 93px;
  background-position:9px 13px,31px 7px,54px 41px;
  opacity:.78;
  animation:heroSnowMid 12.6s linear infinite;
}
.home-via-card[data-scene$="-snow"] .hero-weather-fx::after{
  background-image:
    radial-gradient(circle,rgba(238,247,255,.62) 0 .85px,transparent 1.45px),
    radial-gradient(circle,rgba(255,255,255,.48) 0 .65px,transparent 1.15px);
  background-size:31px 43px,53px 61px;
  background-position:4px 11px,21px 29px;
  opacity:.58;
  filter:blur(.12px);
  animation:heroSnowFar 18s linear infinite;
}
.home-via-card[data-scene="night-snow"] .hero-weather-fx{opacity:.96;filter:drop-shadow(0 1px 3px rgba(3,13,29,.30))}

@keyframes heroGlassBreathe{from{transform:translate3d(0,0,0) scale(1)}to{transform:translate3d(-.25%,.35%,0) scale(1.003)}}
@keyframes heroRivuletCreep{from{transform:translate3d(0,-.2%,0)}to{transform:translate3d(.12%,1.8%,0)}}
@keyframes heroSnowNear{to{transform:translate3d(-4.3%,17%,0)}}
@keyframes heroSnowMid{to{transform:translate3d(3.1%,20%,0)}}
@keyframes heroSnowFar{to{transform:translate3d(-1.7%,14%,0)}}
@media(prefers-reduced-motion:reduce){.hero-weather-fx,.hero-weather-fx::before,.hero-weather-fx::after{animation:none!important}}

@media(min-width:981px){
  /* English eyebrow becomes the desktop section title. Korean duplication stays on mobile only. */
  .section-ko-title{display:none!important}
  #upcomingCard .eyebrow,.capture-first .eyebrow,.memo-view .eyebrow,#reviewCard .eyebrow,.travel-followup-inbox .eyebrow{
    font-size:14.5px;line-height:1.25;letter-spacing:.115em;font-weight:820;color:#526985;
  }
  .daily-card-head{margin-bottom:14px}
  .capture-first-head{margin-bottom:14px}
  .memo-head{margin-bottom:0}
  .memo-search{margin-top:10px}
  .travel-inbox-head{min-height:26px}
  .section-label-row .followup-count{transform:translateY(-1px)}

  /* One full-width action rail: input methods first, then processing actions. */
  .capture-actions{
    display:flex!important;
    width:100%;
    justify-content:stretch!important;
    align-items:stretch!important;
    gap:8px!important;
    margin-top:12px!important;
  }
  .capture-actions>button{
    flex:1 1 0!important;
    width:auto!important;
    min-width:0!important;
    min-height:42px!important;
    padding:10px 8px!important;
    border-radius:13px!important;
    font-size:13.5px!important;
    font-weight:760!important;
    white-space:nowrap;
  }
  /* Input methods: neutral family */
  .capture-actions #voiceBtn,
  .capture-actions #ticketImageBtn,
  .capture-actions #mailImportBtn{
    border:1px solid #dfe6ef!important;
    background:#f3f6fa!important;
    color:#4b5e76!important;
    box-shadow:none!important;
  }
  .capture-actions #voiceBtn:hover,
  .capture-actions #ticketImageBtn:hover,
  .capture-actions #mailImportBtn:hover{background:#ebf0f6!important;border-color:#d3dde9!important}
  /* Processing actions: one family, different emphasis. */
  .capture-actions #memoSaveBtn{
    position:relative;
    margin-left:10px;
    border:1px solid #cbd9ee!important;
    background:#eaf0fa!important;
    color:#5674a7!important;
  }
  .capture-actions #memoSaveBtn::before{
    content:"";
    position:absolute;
    left:-10px;
    top:8px;
    bottom:8px;
    width:1px;
    background:#d9e2ed;
    pointer-events:none;
  }
  .capture-actions #parseBtn{
    border:1px solid #9fb8e5!important;
    background:#a9bee7!important;
    color:#fff!important;
    box-shadow:0 5px 12px rgba(94,127,191,.12)!important;
  }
  .capture-actions #memoSaveBtn:disabled{opacity:.56}
  .capture-actions #parseBtn:disabled{opacity:.58}
  .capture-imports{margin-top:0!important}
}

@media(max-width:720px){
  /* Weather must still read on small screens, but copy remains protected. */
  .hero-weather-fx{mask-image:linear-gradient(90deg,rgba(0,0,0,.10) 0%,rgba(0,0,0,.36) 48%,#000 76%,#000 100%);-webkit-mask-image:linear-gradient(90deg,rgba(0,0,0,.10) 0%,rgba(0,0,0,.36) 48%,#000 76%,#000 100%)}
  .home-via-card[data-scene$="-rain"] .hero-weather-fx{opacity:.72}
  .home-via-card[data-scene$="-storm"] .hero-weather-fx{opacity:.88}
  .home-via-card[data-scene$="-snow"] .hero-weather-fx{opacity:.84}
}

/* A8.12.9 · Control Consistency Polish */
#travelFollowupCount:empty{display:none!important}
.refresh-icon-action{width:34px;height:34px;padding:0;display:grid;place-items:center;border:1px solid transparent;border-radius:11px;background:transparent;color:#71839a}
.refresh-icon-action:hover{background:#eef3f8;border-color:#dce5ef;color:var(--accent-strong)}
.refresh-icon-action svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
@media(min-width:981px){
  #reviewCard{position:relative}
  #reviewCard .daily-card-head{padding-right:42px}
  #reviewCard .refresh-icon-action{top:20px;right:20px}
  .schedule-filters{display:grid!important;grid-template-columns:repeat(7,minmax(0,1fr));width:100%;gap:9px!important}
  .schedule-filter{width:100%;min-width:0;text-align:center;justify-content:center;padding-left:8px;padding-right:8px}
}

/* A8.12.11 · Mobile Parity + Hero Asset Refinement */
/* Weather principle: the scene should communicate weather first; FX only supports it. */
.home-via-card[data-scene="night-clear"]{
  --hero-filter:saturate(.92) brightness(.66) contrast(1.18);
  --hero-overlay:linear-gradient(90deg,rgba(22,37,58,.82) 0%,rgba(22,37,58,.57) 38%,rgba(22,37,58,.10) 72%,rgba(13,27,46,.02) 100%);
}
.home-via-card[data-scene="night-cloudy"]{
  --hero-filter:saturate(.45) brightness(.52) contrast(.82);
  --hero-overlay:linear-gradient(90deg,rgba(48,61,78,.88) 0%,rgba(54,67,84,.74) 40%,rgba(75,88,103,.38) 74%,rgba(69,82,99,.27) 100%);
}
.home-via-card[data-scene="night-cloudy"] .hero-weather-fx{
  display:block;opacity:.72;inset:-8%!important;
  background:
    radial-gradient(ellipse 62% 35% at 78% 16%,rgba(181,194,207,.22),transparent 74%),
    radial-gradient(ellipse 72% 38% at 52% 35%,rgba(151,166,183,.18),transparent 76%),
    linear-gradient(180deg,rgba(123,142,162,.17),rgba(75,94,115,.06) 58%,transparent 85%);
  backdrop-filter:blur(.8px);
  filter:blur(.35px);
  mask-image:linear-gradient(90deg,rgba(0,0,0,.08),rgba(0,0,0,.30) 42%,#000 72%);
  -webkit-mask-image:linear-gradient(90deg,rgba(0,0,0,.08),rgba(0,0,0,.30) 42%,#000 72%);
}

/* Rain uses the droplets already photographed in the scene, crops toward them, and adds only soft wet-glass support. */
.home-via-card[data-scene="day-rain"],.home-via-card[data-scene="day-storm"]{--hero-position:68% 48%}
.home-via-card[data-scene="night-rain"],.home-via-card[data-scene="night-storm"]{--hero-position:70% 48%}
.home-via-card[data-scene$="-rain"] .hero-weather-fx{
  opacity:.86!important;
  filter:blur(.22px) drop-shadow(0 1px 2px rgba(77,105,134,.12))!important;
  backdrop-filter:blur(.18px);
}
.home-via-card[data-scene$="-rain"] .hero-weather-fx::before{
  background-image:
    radial-gradient(ellipse 7px 10px at 63% 14%,rgba(248,252,255,.46) 0 27%,rgba(140,176,207,.20) 43%,transparent 68%),
    radial-gradient(ellipse 4px 7px at 72% 29%,rgba(252,254,255,.58) 0 30%,rgba(137,172,203,.23) 46%,transparent 70%),
    radial-gradient(ellipse 9px 13px at 81% 17%,rgba(249,253,255,.51) 0 27%,rgba(131,167,199,.22) 45%,transparent 69%),
    radial-gradient(ellipse 5px 8px at 88% 42%,rgba(247,252,255,.48) 0 30%,rgba(129,166,199,.20) 47%,transparent 70%),
    radial-gradient(ellipse 8px 11px at 94% 25%,rgba(251,254,255,.54) 0 28%,rgba(138,173,204,.22) 46%,transparent 70%),
    radial-gradient(ellipse 4px 6px at 68% 68%,rgba(248,253,255,.42) 0 30%,rgba(132,168,201,.18) 47%,transparent 71%),
    radial-gradient(ellipse 7px 12px at 84% 75%,rgba(249,253,255,.50) 0 28%,rgba(132,168,201,.21) 45%,transparent 69%),
    radial-gradient(ellipse 3px 5px at 97% 60%,rgba(251,254,255,.46) 0 30%,rgba(138,173,204,.18) 47%,transparent 71%);
  opacity:.78;
  filter:blur(.45px);
  animation:heroGlassBreathe 12s ease-in-out infinite alternate;
}
.home-via-card[data-scene$="-rain"] .hero-weather-fx::after{
  background-image:
    radial-gradient(ellipse 2.3px 27px at 77% 32%,rgba(230,241,251,.29) 0 31%,rgba(105,150,190,.10) 52%,transparent 75%),
    radial-gradient(ellipse 1.8px 38px at 91% 47%,rgba(232,243,252,.28) 0 30%,rgba(100,146,187,.10) 52%,transparent 75%),
    radial-gradient(ellipse 1.7px 19px at 68% 57%,rgba(235,245,253,.23) 0 31%,rgba(109,153,191,.08) 52%,transparent 74%);
  opacity:.62;
  filter:blur(.75px);
  animation:heroRivuletCreep 13s ease-in-out infinite alternate;
}
.home-via-card[data-scene$="-storm"] .hero-weather-fx{
  opacity:.93!important;
  background:linear-gradient(180deg,rgba(31,49,70,.18),rgba(23,42,64,.30));
  backdrop-filter:blur(.85px) saturate(.88);
}
.home-via-card[data-scene$="-storm"] .hero-weather-fx::before{filter:blur(.5px);opacity:.90}
.home-via-card[data-scene$="-storm"] .hero-weather-fx::after{filter:blur(.95px);opacity:.78}

@media(max-width:720px){
  /* One section language on mobile too: eyebrow is the title, duplicated Korean headings are removed. */
  .section-ko-title{display:none!important}
  .home-upcoming-card .section-ko-title{display:none!important}
  .daily-card-head{margin-bottom:14px}
  .daily-card-head .eyebrow,.capture-first .eyebrow,.memo-view .eyebrow,.travel-followup-inbox .eyebrow{font-size:12px;letter-spacing:.15em}

  /* Mobile Quick Capture parity: input methods 3-up, processing actions 2-up. */
  .capture-first{display:flex;flex-direction:column}
  .capture-first-head{order:1;display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px}
  .capture-first-head>div{min-width:0}
  .capture-first-note{font-size:11px;padding:6px 9px;white-space:nowrap}
  .capture-first>textarea{order:2}
  .capture-imports{order:3;margin:12px 0 0;padding:0;border:0;background:transparent;box-shadow:none}
  .capture-actions{order:4;display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px!important;margin-top:10px!important}
  .classification-details{order:5;margin-top:16px}
  .capture-first>.hint{order:6}
  #directInputBtn{display:none!important}
  .quick-import-actions{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px!important;margin:0!important}
  .quick-import-actions #voiceBtn,.quick-import-actions #ticketImageBtn,.quick-import-actions #mailImportBtn{
    width:100%;min-height:48px;padding:10px 8px!important;border:1px solid #dfe6ef!important;border-radius:14px!important;background:#f1f5f9!important;color:#31445e!important;display:flex;align-items:center;justify-content:center;gap:4px;font-size:12.5px!important;font-weight:760!important;line-height:1.2!important;white-space:nowrap
  }
  .quick-import-actions #voiceBtn[hidden]{display:none!important}
  .quick-import-actions .integration-button small{display:none!important}
  .capture-actions #memoSaveBtn,.capture-actions #parseBtn{width:100%;min-height:48px!important;padding:11px 10px!important;font-size:13.5px!important;border-radius:14px!important}
  .capture-actions #memoSaveBtn{background:#e8eef8!important;color:#58719a!important;border:1px solid #d8e2f0!important}
  .capture-actions #parseBtn{background:#9fb6dd!important;color:white!important;border:1px solid #94abd2!important}

  /* Removing duplicated headings should actually reclaim vertical space. */
  .memo-head{margin-bottom:14px}
  .memo-head p{margin:10px 0 0;font-size:13px;line-height:1.55}
  .travel-inbox-head{margin-bottom:14px}
  #upcomingCard .schedule-filter-shell{margin-top:2px}
  .home-upcoming-card .daily-card-head{margin-bottom:12px}

  /* Mobile hero crops toward the scene while retaining the left copy-safe zone. */
  .home-via-card[data-scene="day-rain"],.home-via-card[data-scene="day-storm"],.home-via-card[data-scene="night-rain"],.home-via-card[data-scene="night-storm"]{--hero-position:72% center}
  .home-via-card[data-scene="night-cloudy"] .hero-weather-fx{opacity:.64}
}

/* A8.12.12 · Capture Flow + Weather Clarity */
/* Redundant capture guidance removed from markup; the interface itself communicates the flow. */
.capture-first-head{align-items:flex-start}

/* Rain should read as transparent water on glass, not opaque snow-like particles. */
.home-via-card[data-scene$="-rain"] .hero-weather-fx::before,
.home-via-card[data-scene$="-storm"] .hero-weather-fx::before{
  mix-blend-mode:screen;
}
.home-via-card[data-scene$="-rain"] .hero-weather-fx::before{
  background-image:
    radial-gradient(ellipse 8px 11px at 62% 15%,transparent 0 23%,rgba(235,247,255,.16) 29%,rgba(114,158,198,.18) 43%,rgba(255,255,255,.05) 50%,transparent 68%),
    radial-gradient(ellipse 5px 8px at 71% 31%,transparent 0 22%,rgba(239,249,255,.19) 30%,rgba(112,156,197,.16) 44%,rgba(255,255,255,.05) 52%,transparent 69%),
    radial-gradient(ellipse 10px 14px at 81% 18%,transparent 0 22%,rgba(238,248,255,.18) 29%,rgba(104,151,193,.18) 44%,rgba(255,255,255,.05) 51%,transparent 69%),
    radial-gradient(ellipse 6px 9px at 88% 43%,transparent 0 23%,rgba(240,250,255,.17) 30%,rgba(105,153,195,.15) 45%,rgba(255,255,255,.04) 52%,transparent 70%),
    radial-gradient(ellipse 9px 12px at 94% 26%,transparent 0 22%,rgba(238,248,255,.18) 29%,rgba(108,154,196,.17) 45%,rgba(255,255,255,.05) 52%,transparent 70%),
    radial-gradient(ellipse 5px 7px at 67% 68%,transparent 0 23%,rgba(237,248,255,.14) 30%,rgba(108,154,196,.13) 45%,transparent 70%),
    radial-gradient(ellipse 8px 13px at 84% 75%,transparent 0 22%,rgba(239,249,255,.18) 29%,rgba(105,152,194,.17) 44%,rgba(255,255,255,.04) 51%,transparent 69%),
    radial-gradient(ellipse 4px 6px at 97% 59%,transparent 0 23%,rgba(240,250,255,.14) 30%,rgba(110,157,198,.12) 46%,transparent 71%);
  opacity:.68!important;
  filter:blur(.7px)!important;
}
.home-via-card[data-scene$="-rain"] .hero-weather-fx::after{
  background-image:
    radial-gradient(ellipse 2px 29px at 77% 34%,transparent 0 20%,rgba(221,239,250,.18) 27%,rgba(99,146,187,.11) 48%,transparent 72%),
    radial-gradient(ellipse 1.7px 41px at 91% 49%,transparent 0 18%,rgba(224,241,251,.17) 27%,rgba(96,142,184,.10) 49%,transparent 73%),
    radial-gradient(ellipse 1.5px 21px at 68% 58%,transparent 0 20%,rgba(227,243,252,.14) 28%,rgba(105,150,188,.08) 50%,transparent 72%);
  opacity:.48!important;
  filter:blur(1px)!important;
}

/* Storm = the same wet-glass language, plus subtle irregular rainfall in the distance. */
.home-via-card[data-scene$="-storm"] .hero-weather-fx::before{
  background-image:
    radial-gradient(ellipse 9px 13px at 61% 13%,transparent 0 20%,rgba(233,246,255,.20) 27%,rgba(100,150,193,.21) 43%,transparent 68%),
    radial-gradient(ellipse 6px 10px at 70% 29%,transparent 0 20%,rgba(235,247,255,.20) 27%,rgba(98,148,191,.20) 44%,transparent 69%),
    radial-gradient(ellipse 11px 16px at 78% 20%,transparent 0 19%,rgba(233,246,255,.22) 26%,rgba(95,145,188,.22) 43%,transparent 68%),
    radial-gradient(ellipse 7px 12px at 85% 42%,transparent 0 20%,rgba(235,247,255,.19) 28%,rgba(94,145,189,.19) 45%,transparent 70%),
    radial-gradient(ellipse 10px 15px at 91% 25%,transparent 0 19%,rgba(234,247,255,.21) 27%,rgba(98,148,191,.20) 44%,transparent 69%),
    radial-gradient(ellipse 6px 10px at 96% 62%,transparent 0 20%,rgba(235,247,255,.18) 28%,rgba(94,144,187,.17) 45%,transparent 70%),
    radial-gradient(ellipse 10px 17px at 73% 74%,transparent 0 18%,rgba(233,246,255,.21) 26%,rgba(95,145,188,.20) 43%,transparent 68%),
    radial-gradient(ellipse 6px 10px at 64% 57%,transparent 0 20%,rgba(236,248,255,.18) 28%,rgba(99,149,191,.17) 45%,transparent 70%);
  opacity:.80!important;
  filter:blur(.65px)!important;
}
.home-via-card[data-scene$="-storm"] .hero-weather-fx::after{
  background-image:
    linear-gradient(104deg,transparent 0 48.8%,rgba(219,237,250,.10) 49.15%,transparent 49.6% 100%),
    linear-gradient(108deg,transparent 0 49.0%,rgba(219,237,250,.075) 49.25%,transparent 49.55% 100%),
    radial-gradient(ellipse 2.1px 37px at 78% 32%,transparent 0 16%,rgba(218,238,250,.20) 26%,rgba(91,137,180,.12) 50%,transparent 74%),
    radial-gradient(ellipse 1.8px 51px at 90% 48%,transparent 0 15%,rgba(220,239,251,.18) 25%,rgba(88,135,178,.11) 50%,transparent 75%),
    radial-gradient(ellipse 1.6px 29px at 69% 59%,transparent 0 16%,rgba(224,241,251,.15) 26%,rgba(97,142,181,.09) 50%,transparent 74%);
  background-size:91px 123px,137px 171px,auto,auto,auto;
  background-position:13px 7px,48px 33px,0 0,0 0,0 0;
  opacity:.56!important;
  filter:blur(.75px)!important;
  animation:heroStormDrift 8.8s linear infinite!important;
}
@keyframes heroStormDrift{to{background-position:4px 39px,61px 78px,0 7px,0 13px,0 9px}}

/* Cloudy night must show an actual cloud ceiling rather than only atmospheric haze. */
.home-via-card[data-scene="night-cloudy"]{
  --hero-filter:saturate(.54) brightness(.54) contrast(.92);
  --hero-overlay:linear-gradient(90deg,rgba(39,53,72,.89) 0%,rgba(43,58,77,.71) 40%,rgba(66,81,99,.28) 74%,rgba(45,61,80,.16) 100%);
}
.home-via-card[data-scene="night-cloudy"] .hero-weather-fx{
  opacity:.84!important;
  backdrop-filter:none!important;
  filter:blur(.7px)!important;
  background:
    radial-gradient(ellipse 38% 17% at 83% 8%,rgba(181,193,207,.32) 0 42%,rgba(137,153,171,.17) 58%,transparent 74%),
    radial-gradient(ellipse 34% 16% at 61% 15%,rgba(172,186,202,.28) 0 44%,rgba(127,145,164,.14) 60%,transparent 76%),
    radial-gradient(ellipse 42% 18% at 76% 28%,rgba(153,169,187,.24) 0 43%,rgba(111,132,153,.10) 62%,transparent 78%),
    linear-gradient(180deg,rgba(102,121,141,.13) 0%,rgba(77,97,118,.04) 44%,transparent 66%)!important;
  mask-image:linear-gradient(180deg,#000 0%,#000 58%,rgba(0,0,0,.18) 78%,transparent 100%)!important;
  -webkit-mask-image:linear-gradient(180deg,#000 0%,#000 58%,rgba(0,0,0,.18) 78%,transparent 100%)!important;
}

/* Preserve Korean words in the travel empty state; never split '표시됩니다' by syllable. */
#travelFollowupInbox .empty-state strong,
#travelFollowupInbox .empty-state>span:last-child{
  word-break:keep-all!important;
  overflow-wrap:normal!important;
}
#travelFollowupInbox .empty-state>span:last-child{max-width:24em!important}

@media(max-width:720px){
  /* The DOM is already reordered by JS; reinforce the visual flow without relying on old source order. */
  .capture-imports{order:3!important}
  .capture-actions{order:4!important}
  #travelFollowupInbox .empty-state>span:last-child{max-width:21em!important}
  .home-via-card[data-scene$="-rain"] .hero-weather-fx::before{opacity:.62!important}
  .home-via-card[data-scene$="-storm"] .hero-weather-fx::before{opacity:.74!important}
}


/* A8.12.13 · Approved V3 live rain integration */
/* Scene photography carries the wet-glass texture. CSS pseudo droplets are disabled so no opaque / snow-like blobs sit over the middle of the image. */
.home-via-card[data-scene$="-rain"] .hero-weather-fx,
.home-via-card[data-scene$="-storm"] .hero-weather-fx{display:none!important}
.home-via-card[data-scene$="-rain"] .hero-weather-fx::before,
.home-via-card[data-scene$="-rain"] .hero-weather-fx::after,
.home-via-card[data-scene$="-storm"] .hero-weather-fx::before,
.home-via-card[data-scene$="-storm"] .hero-weather-fx::after{content:none!important;background:none!important}

.hero-rain-live{
  position:absolute!important;inset:0!important;width:100%;height:100%;z-index:2!important;pointer-events:none!important;
  display:none;opacity:1;filter:none!important;
  mask-image:linear-gradient(90deg,rgba(0,0,0,.12) 0%,rgba(0,0,0,.35) 36%,#000 62%,#000 100%);
  -webkit-mask-image:linear-gradient(90deg,rgba(0,0,0,.12) 0%,rgba(0,0,0,.35) 36%,#000 62%,#000 100%);
}
.home-via-card[data-scene$="-rain"]>.hero-rain-live,
.home-via-card[data-scene$="-storm"]>.hero-rain-live{display:block!important}
.home-via-card>*:not(.hero-weather-fx):not(.hero-rain-live){z-index:3}

/* V3-approved copy protection: keep rain visible on the scene side while making daytime copy comfortably readable. */
.home-via-card[data-scene="day-rain"]{
  --hero-filter:saturate(.84) contrast(.94) brightness(.98);
  --hero-overlay:linear-gradient(90deg,rgba(248,251,254,.99) 0%,rgba(248,251,254,.96) 42%,rgba(243,248,252,.80) 56%,rgba(227,238,248,.38) 73%,rgba(219,232,244,.08) 100%);
}
.home-via-card[data-scene="day-storm"]{
  --hero-filter:saturate(.70) contrast(.92) brightness(.80);
  --hero-overlay:linear-gradient(90deg,rgba(247,250,253,.995) 0%,rgba(247,250,253,.97) 44%,rgba(239,246,251,.86) 58%,rgba(205,220,235,.47) 75%,rgba(42,58,78,.12) 100%);
}
.home-via-card[data-scene="night-rain"]{
  --hero-filter:saturate(.75) contrast(1.02) brightness(.48) hue-rotate(-4deg);
  --hero-overlay:linear-gradient(90deg,rgba(20,34,53,.91) 0%,rgba(20,34,53,.77) 42%,rgba(20,34,53,.42) 60%,rgba(20,34,53,.13) 78%,rgba(20,34,53,.03) 100%);
}
.home-via-card[data-scene="night-storm"]{
  --hero-filter:saturate(.62) contrast(1.05) brightness(.35) hue-rotate(-5deg);
  --hero-overlay:linear-gradient(90deg,rgba(14,27,45,.94) 0%,rgba(14,27,45,.82) 42%,rgba(14,27,45,.48) 60%,rgba(14,27,45,.17) 78%,rgba(14,27,45,.04) 100%);
}

@media(max-width:720px){
  .home-via-card[data-scene="day-rain"]{--hero-overlay:linear-gradient(90deg,rgba(248,251,254,.995) 0%,rgba(248,251,254,.97) 54%,rgba(239,246,251,.86) 74%,rgba(225,236,247,.48) 91%,rgba(219,232,244,.24) 100%)}
  .home-via-card[data-scene="day-storm"]{--hero-overlay:linear-gradient(90deg,rgba(247,250,253,.995) 0%,rgba(247,250,253,.975) 56%,rgba(237,244,250,.89) 76%,rgba(200,216,232,.58) 92%,rgba(70,87,109,.28) 100%)}
  .hero-rain-live{mask-image:linear-gradient(90deg,rgba(0,0,0,.08) 0%,rgba(0,0,0,.24) 44%,rgba(0,0,0,.78) 68%,#000 100%);-webkit-mask-image:linear-gradient(90deg,rgba(0,0,0,.08) 0%,rgba(0,0,0,.24) 44%,rgba(0,0,0,.78) 68%,#000 100%)}
}

/* A8.13 · Schedule edit + CAVEA viewing sync */
.schedule-item{grid-template-columns:minmax(0,1fr) auto;gap:12px}
.schedule-item-actions{display:flex;align-items:center;gap:7px;flex:none}
.schedule-edit-trigger{width:34px;height:34px;border:1px solid #dbe4ec;border-radius:11px;background:#fbfcfd;color:#6d7f96;display:grid;place-items:center;padding:0;transition:background .15s ease,border-color .15s ease,color .15s ease,transform .15s ease}
.schedule-edit-trigger:hover{background:var(--accent-soft);border-color:#ccd9e8;color:var(--accent-strong);transform:translateY(-1px)}
.schedule-edit-trigger svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.mini-status.cavea{background:#f1f4fa;color:var(--accent-strong);border-color:#d9e2ee}
.schedule-edit-dialog{width:min(560px,calc(100% - 32px));max-height:min(86vh,760px);border:1px solid #dbe4ec;border-radius:26px;padding:0;background:rgba(252,253,254,.99);box-shadow:0 24px 80px rgba(39,57,79,.22);color:var(--text);overflow:hidden}
.schedule-edit-dialog::backdrop{background:rgba(34,46,61,.34);backdrop-filter:blur(5px)}
.schedule-edit-form{display:grid;gap:16px;padding:24px;max-height:min(86vh,760px);overflow:auto}
.schedule-edit-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}
.schedule-edit-head h2{margin:5px 0 0;font-size:24px;line-height:1.2}
.icon-close{width:36px;height:36px;border:1px solid #dce4eb;background:#f7f9fb;border-radius:12px;color:#738196;font-size:25px;line-height:1;display:grid;place-items:center;padding:0}
.schedule-edit-linked-note{display:grid;grid-template-columns:auto minmax(0,1fr);gap:11px;align-items:start;padding:13px 14px;border:1px solid #d7e1ee;border-radius:16px;background:linear-gradient(135deg,#f4f7fb,#eef3f9)}
.schedule-edit-link-badge{display:inline-flex;align-items:center;padding:5px 8px;border-radius:8px;background:#e2eaf4;color:var(--accent-strong);font-size:10px;font-weight:850;white-space:nowrap}
.schedule-edit-linked-note strong{display:block;font-size:13px;color:#405a79}.schedule-edit-linked-note p{margin:4px 0 0;font-size:11.5px;line-height:1.55;color:#6e7d90}
.schedule-edit-form .field{display:grid;gap:7px}.schedule-edit-form .field>span{font-size:12px;font-weight:800;color:#5d6f85}.schedule-edit-form input[type="text"],.schedule-edit-form input[type="datetime-local"],.schedule-edit-form input[type="date"]{width:100%;min-height:45px;border:1px solid #dbe3ea;border-radius:13px;background:#fff;padding:10px 12px;font:inherit;color:var(--text);outline:none;box-sizing:border-box}.schedule-edit-form input:focus{border-color:#a9bad1;box-shadow:0 0 0 3px rgba(94,127,191,.11)}.schedule-edit-form input:disabled{background:#f2f4f7;color:#8995a5;cursor:not-allowed}
.field-help{font-size:10.8px;line-height:1.45;color:#7a899b}.schedule-edit-check{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:750;color:#607187}.schedule-edit-check input{width:17px;height:17px;accent-color:var(--accent-strong)}.schedule-edit-check.is-locked{opacity:.58}
.schedule-edit-time-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.schedule-edit-time-grid[hidden]{display:none!important}
.schedule-edit-conflict{padding:13px 14px;border-radius:14px;background:#fff8ed;border:1px solid #f0dcc1;color:#6d5940}.schedule-edit-conflict strong{font-size:12.5px}.schedule-edit-conflict p{font-size:11.5px;line-height:1.5;margin:4px 0 0}.schedule-edit-conflict ul{margin:8px 0 0;padding-left:18px;font-size:11px;line-height:1.55}
.schedule-edit-status{padding:11px 12px;border-radius:12px;background:#f0f5fb;color:#4e6787;font-size:11.5px;line-height:1.45}.schedule-edit-status.error{background:#fff3f1;color:#9a554d}.schedule-edit-status.ok{background:#eef7f2;color:#4f7561}
.schedule-edit-actions{display:flex;justify-content:flex-end;gap:9px;padding-top:3px}.schedule-edit-actions button{min-width:96px}
.review-cavea-sync{border-color:#d8e1ed;background:linear-gradient(135deg,rgba(248,250,253,.98),rgba(241,245,250,.92))}
@media(max-width:720px){
  .schedule-edit-trigger{width:32px;height:32px;border-radius:10px}.schedule-item-actions{gap:5px}.schedule-item{gap:8px}
  .schedule-edit-dialog{width:100%;max-width:none;max-height:88dvh;margin:auto 0 0;border-radius:24px 24px 0 0;border-left:0;border-right:0;border-bottom:0}
  .schedule-edit-form{padding:20px 18px calc(18px + env(safe-area-inset-bottom));max-height:88dvh;gap:14px}
  .schedule-edit-head h2{font-size:21px}.schedule-edit-time-grid{grid-template-columns:1fr}.schedule-edit-actions{position:sticky;bottom:0;background:linear-gradient(to bottom,rgba(252,253,254,.82),#fcfdfe 32%);padding-top:12px}.schedule-edit-actions button{flex:1;min-height:44px}
}

/* A8.13.1 · Full Schedule Editor + Cancel/Delete */
.schedule-edit-dialog{width:min(680px,calc(100% - 32px));max-height:min(90vh,880px)}
.schedule-edit-form{max-height:min(90vh,880px)}
.schedule-edit-grid{display:grid;gap:10px}.schedule-edit-grid.two-col{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.schedule-edit-form select,.schedule-edit-form textarea{
  width:100%;border:1px solid #dbe3ea;border-radius:13px;background:#fff;padding:10px 12px;font:inherit;color:var(--text);outline:none;box-sizing:border-box
}
.schedule-edit-form select{min-height:45px}.schedule-edit-form textarea{min-height:78px;resize:vertical;line-height:1.5}
.schedule-edit-form select:focus,.schedule-edit-form textarea:focus{border-color:#a9bad1;box-shadow:0 0 0 3px rgba(94,127,191,.11)}
.schedule-edit-form select:disabled,.schedule-edit-form textarea:disabled{background:#f2f4f7;color:#8995a5;cursor:not-allowed}
.schedule-edit-domain-fields{display:grid;gap:11px;padding:14px;border:1px solid #e0e7ee;border-radius:16px;background:#f8fafc}
.schedule-edit-domain-fields[hidden]{display:none!important}.schedule-edit-domain-title{font-size:11px;font-weight:850;letter-spacing:.07em;color:#60738d;text-transform:uppercase}
.schedule-edit-repeat-row{align-items:end}.schedule-edit-repeat-row>.schedule-edit-check{min-height:45px;padding:0 2px}
.schedule-edit-danger{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:13px 14px;border:1px solid #eadfdc;border-radius:16px;background:#fffaf9}
.schedule-edit-danger>div:first-child{display:grid;gap:3px;min-width:0}.schedule-edit-danger strong{font-size:12px;color:#735851}.schedule-edit-danger span{font-size:10.8px;line-height:1.45;color:#8a7670}
.schedule-edit-danger-actions{display:flex;gap:7px;flex:none}.danger-ghost,.danger-text,.danger-solid{font-weight:800}
.danger-ghost{padding:9px 11px;border:1px solid #e2c9c4;background:#fff;color:#9b5f55}.danger-text{padding:9px 8px;background:transparent;color:#a45e55;text-decoration:underline;text-underline-offset:3px}.danger-solid{padding:10px 13px;background:#9c5f56;color:white}
.schedule-edit-delete-confirm{display:grid;gap:8px;padding:14px;border:1px solid #e6c8c2;border-radius:15px;background:#fff4f1;color:#704c46}.schedule-edit-delete-confirm[hidden]{display:none!important}.schedule-edit-delete-confirm strong{font-size:12.5px}.schedule-edit-delete-confirm p{font-size:11px;line-height:1.55;margin:0}.schedule-edit-delete-confirm>div{display:flex;justify-content:flex-end;gap:8px}
.schedule-edit-cancelled-note{font-size:11px;color:#915b52}

@media(max-width:720px){
  .schedule-edit-dialog{max-height:91dvh}.schedule-edit-form{max-height:91dvh}
  .schedule-edit-grid.two-col{grid-template-columns:1fr}
  .schedule-edit-danger{align-items:flex-start;flex-direction:column}.schedule-edit-danger-actions{width:100%}.schedule-edit-danger-actions button{flex:1}
}


.schedule-edit-task-grid{display:grid;gap:10px}.schedule-edit-task-grid[hidden]{display:none!important}


/* A8.13.2 Shared Record Editing */
.schedule-edit-viewing-fields{background:linear-gradient(180deg,#f8fafc,#f5f8fc);border-color:#d8e2ee}
.schedule-edit-viewing-fields .schedule-edit-domain-title+ .schedule-edit-grid{margin-top:1px}
.schedule-edit-nested{display:grid;gap:10px;padding:10px 0 0}.schedule-edit-nested[hidden]{display:none!important}
.schedule-edit-viewing-fields .field-help{max-width:68ch}
.schedule-edit-viewing-fields .is-disabled{opacity:.62}
.schedule-edit-cast-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}
.schedule-edit-cast-list{display:grid;gap:8px}
.schedule-edit-cast-row{display:grid;grid-template-columns:minmax(120px,1.25fr) minmax(110px,1fr) minmax(105px,.7fr) auto;gap:8px;align-items:center}
.schedule-edit-cast-row input,.schedule-edit-cast-row select{width:100%;min-width:0}
.schedule-edit-cast-empty{padding:12px 14px;border:1px dashed #d6dfe9;border-radius:12px;color:#6d7987;background:rgba(255,255,255,.62);font-size:13px}
.ghost.compact,.danger-text.compact{min-height:34px;padding:6px 10px;font-size:12px}
@media(max-width:720px){.schedule-edit-cast-row{grid-template-columns:1fr 1fr}.schedule-edit-cast-row select{grid-column:1}.schedule-edit-cast-row .danger-text{grid-column:2;justify-self:end}}

/* A8.13.2b · Viewing edit surface slim-down */
.schedule-edit-form [hidden]{display:none!important}
.schedule-edit-title-field .field-label-row{display:flex;align-items:center;gap:8px}
.schedule-edit-classification-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}
.schedule-edit-form input[type="number"]{width:100%;min-height:45px;border:1px solid #dbe3ea;border-radius:13px;background:#fff;padding:10px 12px;font:inherit;color:var(--text);outline:none;box-sizing:border-box}
.schedule-edit-form input[type="number"]:focus{border-color:#a9bad1;box-shadow:0 0 0 3px rgba(94,127,191,.11)}
.schedule-edit-viewing-fields{gap:13px}
.schedule-edit-viewing-fields>.schedule-edit-domain-title:first-child{margin-bottom:-1px}

/* A8.13.2b1 · Mobile schedule edit dialog centering fix
   Keep the editor as a centered modal on phones instead of a left-anchored bottom sheet. */
@media(max-width:720px){
  .schedule-edit-dialog{
    width:calc(100vw - 24px);
    max-width:680px;
    max-height:calc(100dvh - 24px);
    margin:auto;
    box-sizing:border-box;
    border:1px solid #dbe4ec;
    border-radius:24px;
  }
  .schedule-edit-form{max-height:calc(100dvh - 24px)}
}

/* A8.13.2c · Mobile viewing editor compaction */
.schedule-edit-compact-section{display:contents}
.schedule-edit-compact-section>summary{display:none}
.schedule-edit-compact-body{display:grid;gap:11px}
@media(max-width:720px){
  .schedule-edit-viewing-fields{padding:0;border:0;background:transparent;gap:8px}
  .schedule-edit-compact-section{display:block;border:1px solid #dce5ee;border-radius:16px;background:#f8fafc;overflow:hidden}
  .schedule-edit-compact-section>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:54px;padding:12px 14px;cursor:pointer;list-style:none;color:#536981;font-weight:850;font-size:12px}
  .schedule-edit-compact-section>summary::-webkit-details-marker{display:none}
  .schedule-edit-compact-section>summary::after{content:'⌄';font-size:17px;line-height:1;color:#7b8ba0;transition:transform .16s ease}
  .schedule-edit-compact-section[open]>summary::after{transform:rotate(180deg)}
  .schedule-edit-compact-section>summary>span{flex:none}
  .schedule-edit-compact-section>summary>small{min-width:0;flex:1;text-align:right;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#8492a3;font-size:10.5px;font-weight:650;letter-spacing:0}
  .schedule-edit-compact-section[open]>summary{border-bottom:1px solid #e3e9ef;background:#fbfcfd}
  .schedule-edit-compact-body{padding:12px 13px 14px;gap:10px}
  .schedule-edit-compact-body>.schedule-edit-domain-title:first-child{display:none}
}

/* A8.14.0 · Home To-Do + Calendar + Editable Preview */
.preview-grid dd{overflow-wrap:break-word;word-break:keep-all}
.preview-edit-panel{margin-top:18px;border:1px solid #dbe3ed;border-radius:17px;background:#f8fafc;overflow:hidden}
.preview-edit-panel>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;cursor:pointer;list-style:none;padding:13px 15px;color:#4f6683;font-size:13px;font-weight:820}
.preview-edit-panel>summary::-webkit-details-marker{display:none}.preview-edit-panel>summary small{font-size:10.5px;font-weight:650;color:#8391a2}
.preview-edit-panel[open]>summary{border-bottom:1px solid #e1e7ef}.preview-edit-grid{display:grid;grid-template-columns:1fr 1fr;gap:11px;padding:14px 15px 16px}.preview-edit-grid .span-2{grid-column:1/-1}.preview-edit-grid .field{display:grid;gap:6px}.preview-edit-grid .field>span{font-size:11px;font-weight:800;color:#687a90}.preview-edit-grid input,.preview-edit-grid select,.preview-edit-grid textarea{width:100%;min-width:0;border:1px solid #d8e1ec;border-radius:12px;background:#fff;padding:10px 11px;font:inherit;color:var(--ink);outline:none}.preview-edit-grid input,.preview-edit-grid select{min-height:42px}.preview-edit-grid textarea{min-height:68px;resize:vertical;line-height:1.45}.preview-edit-grid input:focus,.preview-edit-grid select:focus,.preview-edit-grid textarea:focus{border-color:#a9bad1;box-shadow:0 0 0 3px rgba(94,127,191,.10)}.preview-edit-time-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.preview-edit-check{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:750;color:#607187}.preview-edit-check input{width:17px;height:17px;accent-color:var(--accent-strong)}

.home-todo-card{display:grid;gap:12px}.todo-filter-shell{display:grid;gap:8px}.todo-filter-line{display:grid;grid-template-columns:38px minmax(0,1fr);gap:8px;align-items:start}.todo-filter-line>span{padding-top:7px;font-size:10px;font-weight:820;color:#8190a2}.todo-filter-row{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;padding:1px 1px 3px}.todo-filter-row::-webkit-scrollbar{display:none}.todo-filter-row button{flex:none;padding:7px 10px;border:1px solid #dce4ee;background:#f6f8fb;color:#66788e;border-radius:999px;font-size:10.5px;font-weight:760;white-space:nowrap}.todo-filter-row button.selected{background:#e3ebf8;border-color:#c8d7ee;color:#486b9e}.home-todo-list{display:grid;gap:8px}.home-todo-item{display:grid;grid-template-columns:25px minmax(0,1fr) 30px;gap:10px;align-items:start;border:1px solid #e0e6ee;background:rgba(255,255,255,.72);border-radius:15px;padding:11px 12px}.home-todo-item.is-completed{opacity:.66}.home-todo-check{width:25px;height:25px;border:1px solid #c9d5e5;background:#f4f7fb;color:#5b79a8;border-radius:9px;display:grid;place-items:center;padding:0;font-size:14px;font-weight:850;flex:none;overflow:hidden}.home-todo-check[aria-busy="true"]{opacity:1}.home-todo-check .todo-check-spinner{width:12px;height:12px;margin:0;border-color:rgba(91,121,168,.25);border-top-color:#5b79a8}.home-todo-item.is-completed .home-todo-check{background:#dfe9f6}.home-todo-edit{width:30px;height:30px;border:1px solid #d8e1ec;background:#f7f9fc;color:#6d83a2;border-radius:10px;display:grid;place-items:center;padding:0;font-size:14px;font-weight:800}.home-todo-edit:hover{background:#edf3fa}.home-todo-main{min-width:0;display:grid;gap:4px}.home-todo-title{display:flex;align-items:flex-start;gap:7px;min-width:0}.home-todo-title strong{font-size:13px;line-height:1.38;word-break:keep-all;overflow-wrap:break-word}.home-todo-item.is-completed .home-todo-title strong{text-decoration:line-through}.todo-category-badge,.todo-status-badge{display:inline-flex;align-items:center;width:max-content;max-width:100%;border-radius:7px;padding:3px 6px;font-size:9px;font-weight:820;line-height:1.2}.todo-category-badge{background:#eef2f8;color:#607797}.todo-status-badge{background:#f2f4f7;color:#68788c}.todo-status-badge.is-overdue{background:#fff0e8;color:#a05d3c}.todo-status-badge.is-today{background:#edf3fb;color:#486c9f}.todo-status-badge.is-done{background:#edf4ef;color:#557963}.home-todo-meta{display:flex;flex-wrap:wrap;gap:5px;align-items:center;color:#8490a0;font-size:10.5px}.todo-expand{width:100%;min-height:38px;border:1px solid #dae3ee;background:#f5f8fb;color:#5b7190;border-radius:12px;font-size:11px;font-weight:800}.todo-expand:hover{background:#edf3f9}

.schedule-card-head{gap:12px}.schedule-head-actions{display:flex;align-items:center;gap:7px}.schedule-view-toggle{display:inline-flex;padding:3px;border:1px solid #dce4ee;border-radius:11px;background:#f5f8fb}.schedule-view-toggle button{padding:6px 9px;border-radius:8px;background:transparent;color:#718197;font-size:10.5px;font-weight:800;white-space:nowrap}.schedule-view-toggle button.selected{background:#fff;color:#4b6a94;box-shadow:0 1px 4px rgba(60,84,115,.10)}
.schedule-calendar{display:grid;gap:11px}.calendar-toolbar{display:grid;grid-template-columns:34px minmax(0,1fr) auto 34px;gap:7px;align-items:center}.calendar-toolbar strong{text-align:center;font-size:14px;color:#425872}.calendar-nav,.calendar-today{min-height:34px;border:1px solid #dce4ee;background:#f7f9fb;color:#62758e;border-radius:10px;font-weight:800}.calendar-nav{font-size:21px;line-height:1}.calendar-today{padding:0 10px;font-size:10.5px}.calendar-weekdays,.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}.calendar-weekdays span{text-align:center;font-size:9.5px;font-weight:800;color:#8995a5;padding:3px 0}.calendar-day{min-width:0;min-height:76px;padding:5px 4px;border:1px solid #e4e9ef;border-radius:10px;background:rgba(255,255,255,.72);color:#4b5d73;display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:4px;text-align:left;overflow:hidden}.calendar-day.is-empty{visibility:hidden}.calendar-day.is-today{border-color:#aabddd;background:#f2f6fc}.calendar-day.selected{border-color:#7f9bc8;background:#eaf1fb;box-shadow:0 0 0 1px rgba(94,127,191,.08)}.calendar-day-number{font-size:10.5px;font-weight:800;line-height:1.1;align-self:flex-start}.calendar-events{display:grid;gap:2px;min-width:0;width:100%;overflow:hidden}.calendar-event{display:flex;align-items:center;gap:3px;min-width:0;max-width:100%;padding:2px 3px;border-radius:5px;font-size:8.5px;font-weight:740;line-height:1.22;overflow:hidden;border-left:2px solid transparent}.calendar-event.cat-work{background:#eaf1fb;color:#405f8f;border-left-color:#7898c8}.calendar-event.cat-culture{background:#f0ecf8;color:#665982;border-left-color:#9a88bd}.calendar-event.cat-life{background:#edf4ef;color:#58725f;border-left-color:#86a78e}.calendar-event.cat-health{background:#f8eeee;color:#865f62;border-left-color:#c39498}.calendar-event.cat-family{background:#f5eef2;color:#7a626e;border-left-color:#ad8d9d}.calendar-event.cat-personal{background:#f1f3f6;color:#626f80;border-left-color:#9aa7b8}.calendar-event.is-task{box-shadow:inset 0 0 0 1px rgba(255,255,255,.28)}.calendar-event-time{flex:none;font-size:7.5px;font-weight:850;letter-spacing:-.02em}.calendar-event-title{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;word-break:keep-all}.calendar-more{display:block;min-width:0;padding:1px 3px;font-size:8px;font-weight:800;color:#7b8797;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.calendar-day-list{display:grid;gap:8px;padding-top:3px}.calendar-day-label{font-size:11px;font-weight:820;color:#60748e;padding:2px 1px}.calendar-day-list .schedule-item{background:rgba(255,255,255,.78)}
.schedule-title-row strong{word-break:keep-all;overflow-wrap:break-word}.viewing-title-work{word-break:keep-all;overflow-wrap:break-word}.viewing-title-suffix{white-space:nowrap}

@media(max-width:980px){
  /* Narrow desktop/PWA uses the same stable 3 + 2 capture layout as mobile. */
  .capture-first{display:flex;flex-direction:column}
  .capture-first-head{order:1}.capture-first>textarea{order:2}.capture-imports{order:3;margin:12px 0 0!important;padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important}.capture-actions{order:4;display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:9px!important;margin-top:10px!important}.classification-details{order:5}.capture-first>.hint{order:6}
  #directInputBtn{display:none!important}.quick-import-actions{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:8px!important;margin:0!important;justify-content:stretch!important}.quick-import-actions #voiceBtn,.quick-import-actions #ticketImageBtn,.quick-import-actions #mailImportBtn{width:100%!important;min-width:0!important;min-height:48px!important;padding:10px 6px!important;border:1px solid #dfe6ef!important;border-radius:14px!important;background:#f1f5f9!important;color:#31445e!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:4px!important;font-size:12.5px!important;font-weight:760!important;line-height:1.2!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}.quick-import-actions #voiceBtn[hidden]{display:none!important}.quick-import-actions .integration-button small{display:none!important}.quick-import-actions .integration-button span{min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.capture-actions #memoSaveBtn,.capture-actions #parseBtn{width:100%!important;min-width:0!important;min-height:48px!important;padding:11px 8px!important;font-size:13.5px!important;border-radius:14px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}.capture-actions #memoSaveBtn::before{display:none!important}
}
@media(max-width:520px){.preview-edit-grid{grid-template-columns:1fr}.preview-edit-grid .span-2{grid-column:auto}.preview-edit-time-grid{grid-template-columns:1fr}.todo-filter-line{grid-template-columns:34px minmax(0,1fr)}.schedule-view-toggle button{padding:6px 8px}.schedule-head-actions{gap:4px}.schedule-calendar{gap:9px}.calendar-toolbar{grid-template-columns:38px minmax(0,1fr) auto 38px}.calendar-weekdays,.calendar-grid{gap:3px}.calendar-day{min-height:49px;border-radius:9px;padding:5px 4px 4px;gap:4px;justify-content:space-between}.calendar-day-number{font-size:11px}.calendar-day.is-compact{align-items:stretch}.calendar-day.is-compact .calendar-events,.calendar-day.is-compact .calendar-more{display:none}.calendar-mobile-summary{display:flex;align-items:center;justify-content:space-between;gap:3px;min-height:13px}.calendar-mobile-summary.is-empty{opacity:0}.calendar-mobile-dots{display:flex;gap:2px;min-width:0}.calendar-category-dot{width:5px;height:5px;border-radius:50%;flex:none;background:#9aa7b8}.calendar-category-dot.cat-work{background:#7898c8}.calendar-category-dot.cat-culture{background:#9a88bd}.calendar-category-dot.cat-life{background:#86a78e}.calendar-category-dot.cat-health{background:#c39498}.calendar-category-dot.cat-family{background:#ad8d9d}.calendar-category-dot.cat-personal{background:#9aa7b8}.calendar-mobile-count{font-size:8px;line-height:1;color:#718197;font-weight:850}.calendar-day-list.is-mobile-agenda{margin-top:3px;padding-top:12px;border-top:1px solid #e3e9f0;gap:8px}.calendar-day-list.is-mobile-agenda .calendar-day-label{font-size:12px;padding:0 1px 2px;color:#4e6685}.calendar-day-list.is-mobile-agenda .schedule-item{border-radius:13px;padding:10px}.calendar-day-list.is-mobile-agenda .schedule-title-row strong{font-size:12.5px}.calendar-day-list.is-mobile-agenda .schedule-type-badge{font-size:8.5px}.calendar-day-list.is-mobile-agenda .empty-state{padding:18px 10px}.calendar-event{padding:2px;font-size:7.5px}.calendar-event-time{display:none}.calendar-more{font-size:7.5px;padding-left:2px}}

/* A8.14.0 FIX2 · Schedule view containers must be mutually exclusive.
   Author display rules can otherwise override the HTML hidden attribute. */
.schedule-group-list[hidden],
.schedule-calendar[hidden]{display:none!important}
