:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--ink:#17273b;--muted:#708198;--line:#e2e9ef;--soft:#f6f8fb;--paper:#fff;--primary:#2b6ea5;--primary-dark:#1e5e94;--shadow:0 4px 22px #15314e0e;--font:Inter,"Segoe UI",system-ui,-apple-system,sans-serif}*{box-sizing:border-box}html,body{height:100%;margin:0}body{font-family:var(--font);color:var(--ink);background:var(--soft);-webkit-font-smoothing:antialiased;font-size:13px}button,input,select{font:inherit}button{cursor:pointer}button:disabled{opacity:.38;cursor:not-allowed}button:focus-visible,input:focus-visible,select:focus-visible{outline-offset:2px;outline:3px solid #3381ba47}button svg,.map-footer svg,.search-row svg,.brand-icon svg,.ideas-title svg,.calendar-help svg,.ribbon-links svg,.mobile-tab svg{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0;width:16px;height:16px}.brand-icon svg{stroke:none;width:30px;height:30px}.hidden{display:none!important}.app-shell{flex-direction:column;gap:13px;max-width:2400px;min-height:100vh;margin:auto;padding:15px 20px 18px;display:flex}.topbar{background:var(--paper);border:1px solid var(--line);min-height:83px;box-shadow:var(--shadow);border-radius:18px;align-items:center;gap:22px;padding:15px 19px;display:flex}.brand-lockup{flex-shrink:0;align-items:center;gap:11px;display:flex}.brand-icon{background:linear-gradient(145deg,#54a2dc,#22588e);border-radius:12px;justify-content:center;align-items:center;width:43px;height:43px;display:flex}.brand-title{letter-spacing:-.055em;font-size:17px;font-weight:800}.brand-subtitle{color:#90a1b3;letter-spacing:.15em;margin-top:3px;font-size:8px;font-weight:800}.topbar-divider{background:var(--line);width:1px;height:38px}.journey-heading{flex:1;min-width:110px}.journey-title{width:100%;min-width:80px;color:var(--ink);letter-spacing:-.035em;background:0 0;border:1px solid #0000;border-radius:5px;outline:none;padding:3px 4px;font-size:19px;font-weight:750}.journey-title:hover,.journey-title:focus{background:#f4f7fa;border-color:#dce6ef}.journey-meta{color:var(--muted);margin:3px 4px 0;font-size:11px}.topbar-actions{align-items:center;gap:7px;display:flex}.save-indicator{color:#7b8b9d;white-space:nowrap;align-items:center;gap:7px;margin-right:7px;font-size:11px;display:flex}.save-dot{background:#4ba58e;border-radius:100%;width:7px;height:7px}.button,.icon-button{background:var(--paper);color:var(--ink);border:1px solid var(--line);white-space:nowrap;border-radius:9px;justify-content:center;align-items:center;gap:7px;font-size:12px;font-weight:670;transition:background .14s,border-color .14s;display:inline-flex}.button{min-height:36px;padding:10px 12px}.button svg,.icon-button svg{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;width:15px;height:15px}.button:hover,.icon-button:hover{background:#f1f6fa;border-color:#c4d4e1}.button-primary{background:var(--primary);color:#fff;border-color:var(--primary)}.button-primary:hover{background:var(--primary-dark);color:#fff}.button-soft{color:#2d6794;background:#eaf2f8;border-color:#d5e6f0}.button-outline{background:#fff}.button-danger{color:#b44b4b}.icon-button{flex-shrink:0;width:35px;height:35px;padding:0}.icon-button.mini{border-radius:7px;width:28px;height:28px}.quiet-link{color:var(--primary);background:0 0;border:0;align-items:center;gap:5px;padding:3px 5px;font-size:11px;font-weight:650;display:inline-flex}.quiet-link:hover{text-decoration:underline}.quiet-link svg{width:12px;height:12px}.eyebrow{letter-spacing:.09em;color:#93a1b1;font-size:10px;font-weight:800}.journey-ribbon{background:var(--paper);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:15px;padding:13px 19px 15px}.ribbon-header{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.ribbon-links{color:var(--muted);align-items:center;gap:20px;font-size:11px;display:flex}.ribbon-bars{gap:3px;height:29px;display:flex}.ribbon-chunk{cursor:pointer;border-radius:6px;min-width:6px;transition:filter .16s,transform .16s;position:relative;overflow:hidden}.ribbon-chunk:hover{filter:saturate(1.2);transform:translateY(-1px)}.ribbon-chunk.selected{outline-offset:2px;z-index:1;outline:2px solid #29465b}.ribbon-gap{cursor:default;background:#edf0f4}.ribbon-chunk span{color:#fff;white-space:nowrap;text-overflow:ellipsis;text-align:center;padding:0 8px;font-size:11px;font-weight:700;line-height:29px;display:block;overflow:hidden}.ribbon-labels{gap:3px;margin-top:6px;display:flex}.ribbon-label{color:var(--muted);text-align:center;white-space:nowrap;text-overflow:ellipsis;font-size:10px;overflow:hidden}.workspace{grid-template-columns:minmax(0,1.59fr) minmax(345px,.98fr);gap:13px;height:calc(100vh - 254px);min-height:670px;display:grid}.panel{background:var(--paper);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:15px;min-width:0;overflow:hidden}.calendar-panel{flex-direction:column;height:100%;min-height:0;display:flex}.panel-toolbar{justify-content:space-between;align-items:center;gap:9px;padding:14px 17px 10px;display:flex}.calendar-toolbar-start,.calendar-toolbar-end{align-items:center;gap:9px;min-width:0;display:flex}.scope-toggle,.base-toggle{background:#eef3f7;border-radius:9px;align-items:center;gap:2px;padding:3px;display:flex}.scope-toggle button,.base-toggle button{color:#748599;white-space:nowrap;background:0 0;border:0;border-radius:7px;padding:7px 12px;font-weight:700}.scope-toggle button.active,.base-toggle button.active{color:#29465b;background:#fff;box-shadow:0 2px 5px #17385817}.scope-select{color:#8291a1;align-items:center;gap:5px;max-width:200px;font-size:11px;font-weight:650;display:flex}.scope-select select{border:1px solid var(--line);color:#324a61;cursor:pointer;text-overflow:ellipsis;background:#fff;border-radius:8px;outline:none;min-width:75px;max-width:165px;padding:7px 21px 7px 8px;font-size:12px;font-weight:700}.calendar-help{color:#647c91;background:#f5f9fc;border-block:1px solid #edf2f6;align-items:center;gap:7px;padding:8px 17px;font-size:11px;display:flex}.calendar-help svg{width:13px;height:13px}.calendar-scroll{overscroll-behavior:contain;scrollbar-color:#d3dfe8 transparent;flex:1;padding:14px 18px 28px;overflow:auto}.month-block{margin:0 0 25px}.month-title-row{justify-content:space-between;align-items:baseline;padding:0 0 12px;display:flex}.month-title{letter-spacing:-.04em;margin:0;font-size:18px;font-weight:780}.month-side-note{color:#99a6b4;font-size:11px}.weekday-header{grid-template-columns:repeat(7,minmax(0,1fr));margin-bottom:5px;display:grid}.weekday-header span{color:#8798aa;text-align:center;padding:0 0 4px;font-size:10px;font-weight:660}.weekday-header span.weekend{color:#9ca8b9}.week-row{border:1px solid #e8eef3;background:#fff;border-bottom:0;grid-template-columns:repeat(7,minmax(0,1fr));height:83px;display:grid;position:relative}.week-row:last-child{border-bottom:1px solid #e8eef3}.day-cell{color:#43556a;cursor:crosshair;-webkit-user-select:none;user-select:none;border-right:1px solid #e9eef3;padding:8px 7px;font-size:11px;position:relative}.day-cell:last-of-type{border-right:0}.day-cell.weekend{background:#f7f9fb}.day-cell.outside{color:#b0bac5;background:#f3f5f8}.day-cell.in-range{background-image:linear-gradient(#f0f7fc57,#0000 65%)}.day-cell .today-number{z-index:0;position:relative}.day-cell.transfer-day:after{content:"";background:#c4d0db;border-radius:50%;width:4px;height:4px;position:absolute;bottom:6px;left:50%}.day-cell.target-day{background:#e7f3f9;box-shadow:inset 0 0 0 2px #449cc7}.day-cell.selected-day .today-number{color:#2876b3;font-weight:900}.calendar-bar{color:#fff;cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;z-index:2;border:1.5px solid #14304612;border-radius:3px;align-items:center;min-width:0;height:32px;padding:0 8px;font-weight:700;transition:box-shadow .1s;display:flex;position:absolute;top:32px;overflow:hidden;box-shadow:0 2px 5px #2a40501a}.calendar-bar.start{border-top-left-radius:8px;border-bottom-left-radius:8px}.calendar-bar.end{border-top-right-radius:8px;border-bottom-right-radius:8px}.calendar-bar:not(.start){padding-left:6px}.calendar-bar.selected{outline-offset:2px;z-index:7;outline:3px solid #27445b}.calendar-bar.tentative{border-style:dashed;border-color:#ffffffe6}.calendar-bar.locked .bar-lock{display:inline}.calendar-bar.preview{opacity:.92;z-index:6;box-shadow:0 0 0 3px #2f6ca030,0 3px 8px #254d6e33}.calendar-bar.conflict{outline-offset:2px;outline:3px solid #dd6c56}.calendar-bar .bar-label{text-overflow:ellipsis;white-space:nowrap;pointer-events:none;font-size:11px;overflow:hidden}.calendar-bar .bar-lock{flex:none;margin-left:5px;font-size:11px;display:none;position:relative}.calendar-bar .bar-handle{z-index:3;opacity:0;cursor:ew-resize;touch-action:none;border-radius:5px;width:9px;position:absolute;top:2px;bottom:2px}.calendar-bar .bar-handle:hover,.calendar-bar:hover .bar-handle,.calendar-bar.selected .bar-handle{opacity:1;background:#ffffff57}.calendar-bar .bar-handle:after{content:"";background:#ffffffeb;border-radius:2px;width:2px;height:13px;display:block;position:absolute;top:7px;left:3px}.calendar-bar.dragging{cursor:grabbing}.calendar-bar .bar-subtitle{opacity:.93;margin-left:4px;font-size:10px;font-weight:550}.week-row.multi-lane{height:109px}.week-row.multi-lane .calendar-bar.lane1{top:68px}.week-row.multi-lane .calendar-bar{height:30px}.calendar-blank{text-align:center;color:var(--muted);padding:55px 15px}.calendar-blank h3{color:var(--ink)}.calendar-empty-tip{color:#93a4b3;justify-content:center;align-items:center;gap:5px;margin-top:-8px;font-size:10px;display:flex}.calendar-empty-tip svg{width:12px;height:12px}.ideas-tray{border-top:1px solid var(--line);background:#fcfdfe;min-height:82px;padding:11px 17px 14px}.ideas-head,.ideas-title,.ideas-actions{align-items:center;gap:8px;display:flex}.ideas-head{justify-content:space-between}.ideas-title{font-size:12px;font-weight:750}.ideas-title svg{color:#ce9b52}.ideas-count{color:#7b8a99;background:#f1f4f7;border-radius:12px;padding:2px 7px;font-size:10px}.ideas-actions{gap:9px}.ideas-tray.collapsed .idea-cards{display:none}.ideas-tray.collapsed{min-height:0}.ideas-tray.collapsed #ideasToggle{transform:rotate(180deg)}.idea-cards{flex-wrap:wrap;align-items:center;gap:8px;min-height:26px;margin-top:11px;display:flex}.idea-pill{cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;color:#39516a;background:#fff;border:1px solid #e0e8ef;border-radius:9px;align-items:center;gap:7px;padding:7px 9px;font-size:11px;font-weight:650;display:flex;box-shadow:0 1px 3px #1e384e08}.idea-pill:hover{border-color:#a6c5d9}.idea-pill svg{width:13px;height:13px;stroke:var(--primary);fill:none;stroke-width:1.8px}.ideas-empty{color:#9aaaaf;font-size:11px}.right-panel{grid-template-rows:minmax(325px,1.2fr) minmax(205px,.8fr);gap:13px;min-height:0;display:grid}.map-panel{flex-direction:column;min-height:0;display:flex}.map-toolbar{justify-content:space-between;align-items:center;padding:14px 15px 11px;display:flex}.map-title{letter-spacing:-.035em;margin-top:3px;font-size:16px;font-weight:780}.map-mode-name{color:#98a5b3;margin-left:6px;font-size:11px;font-weight:550}.base-toggle{gap:2px}.base-toggle button{padding:7px 8px;font-size:11px}.map-viewport{touch-action:none;cursor:grab;isolation:isolate;background:#d6e8ec;height:100%;min-height:255px;position:relative;overflow:hidden}.map-viewport.panning{cursor:grabbing}.map-water{background:linear-gradient(160deg,#dceef2,#cfe4ec);position:absolute;inset:0}.map-tiles,.map-svg,.map-pin-layer{pointer-events:none;width:100%;height:100%;position:absolute;inset:0;overflow:hidden}.map-tiles img{-webkit-user-select:none;user-select:none;pointer-events:none;image-rendering:auto;max-width:none;position:absolute}.map-svg{z-index:1}.map-svg .land{fill:#d4e0cf;stroke:#a7c1ac;stroke-width:.75px;vector-effect:non-scaling-stroke}.map-svg .country-border{stroke:#9fb49ccc}.map-svg.street .land{display:none}.map-svg .route-line{fill:none;stroke:#457b9f;stroke-width:2.2px;stroke-dasharray:6 5;vector-effect:non-scaling-stroke;opacity:.95}.map-svg .route-line.journey{stroke-width:2.1px;stroke-dasharray:8 5}.map-svg .route-line.selected-route{stroke:#284e72;stroke-width:3px}.map-pin-layer{z-index:5}.map-pin{pointer-events:auto;cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;min-width:25px;min-height:25px;padding:0;display:flex;position:absolute;overflow:visible;transform:translate(-50%,-50%)}.map-pin-dot{background:var(--pin);color:#fff;border:2px solid #fff;border-radius:99px;flex:none;justify-content:center;align-items:center;width:26px;height:26px;font-size:11px;font-weight:800;display:flex;box-shadow:0 2px 8px #1f43564a}.map-pin.selected .map-pin-dot{outline-offset:3px;outline:3px solid #29485e;transform:scale(1.05)}.map-pin-label{white-space:nowrap;color:#36536b;background:#fffffff0;border-radius:5px;padding:3px 6px;font-size:10px;font-weight:720;position:absolute;top:29px;left:50%;transform:translate(-50%);box-shadow:0 1px 4px #122b461f}.map-pin.selected .map-pin-label{color:#fff;background:#263f57}.map-controls{z-index:6;flex-direction:column;gap:3px;display:flex;position:absolute;top:14px;left:13px}.map-control{background:#fff;border:1px solid #dbe6ed;border-radius:8px;justify-content:center;align-items:center;width:33px;height:33px;display:flex;box-shadow:0 1px 6px #1f394d29}.map-control svg{fill:none;stroke:#526b7c;stroke-width:2px;width:16px;height:16px}.map-fit-actions{z-index:6;gap:4px;display:flex;position:absolute;top:13px;right:12px}.fit-button{color:#335e7b;background:#fffffff2;border:1px solid #d7e4ec;border-radius:7px;padding:7px 8px;font-size:10px;font-weight:750;box-shadow:0 1px 3px #223c501a}.fit-button:hover{background:#fff;border-color:#85b2d1}.map-attribution{z-index:6;color:#647b8b;background:#ffffffdb;border-radius:3px;padding:2px 4px;font-size:9px;position:absolute;bottom:5px;right:7px}.map-attribution a{color:#527d96}.map-footer{color:#8194a5;justify-content:space-between;align-items:center;gap:8px;padding:9px 14px;font-size:10px;display:flex}.map-footer>span{align-items:center;gap:5px;display:flex}.map-footer svg{width:13px;height:13px}.map-popup{z-index:9;background:#fff;border:1px solid #d8e5ef;border-radius:12px;width:min(285px,100% - 26px);padding:13px;position:absolute;bottom:24px;right:13px;box-shadow:0 6px 25px #19384c3d}.popup-title{margin-bottom:8px;font-weight:800}.popup-actions{justify-content:flex-end;gap:8px;margin-top:8px;display:flex}.popup-actions .button{min-height:30px;padding:6px 9px}.text-input{width:100%;color:var(--ink);background:#fff;border:1px solid #dce5ed;border-radius:8px;outline:none;padding:10px 11px;font-size:12px}.text-input:focus{border-color:#6ca8cf;box-shadow:0 0 0 3px #e2f1fb}.details-panel{min-height:0;padding:13px 16px 14px;overflow:auto}.details-overline{justify-content:space-between;align-items:center;display:flex}.details-root{padding-top:7px}.details-heading{letter-spacing:-.04em;align-items:center;gap:7px;margin:4px 0 8px;font-size:20px;font-weight:790;display:flex}.details-location{color:var(--muted);align-items:center;gap:6px;font-size:11px;display:flex}.details-location svg{fill:none;stroke:currentColor;stroke-width:1.7px;width:13px;height:13px}.details-dates{align-items:center;gap:10px;margin:12px 0;display:flex}.info-block{background:#f6f8fa;border:1px solid #ebeff3;border-radius:10px;flex:1;padding:9px 11px}.info-block .info-label{color:#8c9bac;letter-spacing:.06em;font-size:9px;font-weight:750}.info-block .info-value{white-space:nowrap;margin-top:4px;font-size:13px;font-weight:780}.details-actions{flex-wrap:wrap;gap:7px;margin-top:12px;display:flex}.details-actions .button{min-height:33px;padding:8px 10px;font-size:11px}.details-status{color:#687d90;align-items:center;gap:7px;font-size:11px;display:flex}.status-icon{background:#9aa5b3;border-radius:100%;width:8px;height:8px}.details-hint{color:#8294a4;margin-top:13px;font-size:11px;line-height:1.5}.details-subhead{border-top:1px solid #edf0f4;margin-top:15px;padding-top:13px;font-size:11px;font-weight:800}.details-editrow{justify-content:space-between;align-items:center;gap:8px;margin-top:10px;display:flex}.details-editrow label{color:#72859a;font-size:11px}.details-editrow select,.details-editrow input[type=date]{color:#334d65;background:#fff;border:1px solid #dce6ed;border-radius:7px;max-width:160px;padding:6px;font-size:11px}.details-empty{text-align:center;color:var(--muted);flex-direction:column;justify-content:center;align-items:center;gap:9px;padding:35px 22px;display:flex}.details-empty svg{stroke:#8ab0c8;fill:none;stroke-width:1.3px;width:30px;height:30px}.details-empty strong{color:#36536b;font-size:14px}.mobile-tabs{display:none}.search-drawer{z-index:50;justify-content:flex-end;align-items:flex-start;display:flex;position:fixed;inset:0}.drawer-scrim{background:#1226394d;position:absolute;inset:0}.drawer-sheet{z-index:1;background:#fff;width:min(520px,100vw);height:100%;padding:29px;position:relative;overflow:auto;box-shadow:-14px 0 50px #0f293e2b}.drawer-sheet h2{letter-spacing:-.05em;margin:5px 0 9px;font-size:24px}.drawer-sheet p{color:#798b9b;margin:0;font-size:12px;line-height:1.55}.drawer-head{justify-content:space-between;gap:12px;margin-bottom:24px;display:flex}.search-row{border:1px solid #cedde9;border-radius:11px;align-items:center;gap:6px;padding:6px;display:flex;position:relative}.search-row>svg{stroke:#8599aa;fill:none;width:18px;height:18px;margin-left:7px}.search-row input{border:0;outline:0;flex:1;min-width:0;padding:9px 4px;font-size:13px}.search-row .button{min-height:33px;padding:8px 10px}.search-info{color:#8a99a7;padding:10px 2px 13px;font-size:10px;line-height:1.5}.search-results{flex-direction:column;gap:7px;display:flex}.place-result{border:1px solid #e0e8ef;border-radius:10px;align-items:center;gap:10px;padding:11px 12px;display:flex}.place-result:hover{border-color:#accadd}.place-flag{font-size:18px}.place-result-main{flex:1;min-width:0}.place-result-name{font-size:13px;font-weight:750}.place-result-region{color:#8a9bab;text-overflow:ellipsis;white-space:nowrap;margin-top:3px;font-size:11px;overflow:hidden}.place-result-actions{gap:6px;display:flex}.place-result-actions .button{min-height:30px;padding:7px 9px;font-size:10px}.results-note{color:#7f93a5;padding:15px 8px;font-size:11px}.small-sheet{max-width:440px}.form-label{color:#516980;margin:15px 0 7px;font-size:11px;font-weight:750;display:block}.form-label>.text-input{margin-top:7px;font-weight:500}.form-two{grid-template-columns:1fr 1fr;gap:10px;display:grid}.form-error{color:#c34c3f;margin:12px 0;font-size:11px}.full-button{width:100%;margin-top:10px}.version-card{border:1px solid #e1e8ef;border-radius:12px;margin-bottom:13px;padding:15px}.version-card h3{margin:0 0 7px;font-size:14px}.version-card p{margin-bottom:13px}.version-row{border-top:1px solid #eef1f5;align-items:center;gap:10px;padding:8px 0;display:flex}.version-row:first-of-type{border-top:0}.version-name{flex:1;font-size:12px;font-weight:660}.version-small{color:#8494a4;font-size:10px}.version-row .button{min-height:29px;padding:6px 8px;font-size:11px}.version-active{color:#408369;background:#e9f5ee;border-radius:9px;padding:3px 8px;font-size:9px;font-weight:750}.version-compare{grid-template-columns:1fr 1fr;gap:12px;margin:13px 0;display:grid}.compare-column{background:#f7f9fb;border:1px solid #e9eef2;border-radius:10px;padding:12px}.compare-column h4{margin:2px 0 11px;font-size:12px}.compare-stay{color:#3b5064;border-top:1px solid #e2e8ef;justify-content:space-between;gap:7px;padding:8px 0;font-size:11px;display:flex}.compare-stay:first-of-type{border-top:0}.compare-stay.changed{color:#9b7135;font-weight:730}.compare-tip{color:#8193a3;margin-top:10px;font-size:10px;line-height:1.5}.edit-review{z-index:30;color:#fff;background:#1e3448;border-radius:14px;flex-wrap:wrap;align-items:center;gap:11px;width:min(750px,100vw - 24px);padding:14px 16px;display:flex;position:fixed;bottom:21px;left:50%;transform:translate(-50%);box-shadow:0 11px 45px #14293d4d}.edit-review .review-copy{flex:1;min-width:210px}.edit-review .review-copy strong{margin-bottom:4px;font-size:12px;display:block}.edit-review .review-copy small{color:#bdd0df;font-size:10px;line-height:1.45}.edit-review button{white-space:nowrap;color:#fff;background:#34536b;border:1px solid #ffffff3d;border-radius:7px;min-height:32px;padding:7px 10px;font-size:11px;font-weight:690}.edit-review button.primary{color:#23465e;background:#ecf6ff;border-color:#ecf6ff}.edit-review button:disabled{opacity:.4}.toast-stack{z-index:60;pointer-events:none;flex-direction:column;gap:8px;display:flex;position:fixed;bottom:18px;right:20px}.toast{color:#fff;pointer-events:auto;background:#273e51;border-radius:9px;max-width:360px;padding:11px 15px;font-size:12px;font-weight:600;animation:.2s ease-out rise;box-shadow:0 5px 24px #2132453b}@keyframes rise{0%{opacity:.3;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media (max-width:1320px){.app-shell{gap:10px;padding:10px}.topbar{gap:14px;padding:10px 13px}.workspace{grid-template-columns:minmax(0,1.47fr) minmax(325px,1fr);height:calc(100vh - 231px)}.journey-ribbon{padding:11px 13px}.save-indicator,.scope-select label{display:none}.panel-toolbar{padding:10px 12px}.scope-toggle button{padding:7px 9px}}@media (max-width:1040px){.topbar-divider,.brand-subtitle{display:none}.journey-title{font-size:16px}.top-action span{display:none}.workspace{grid-template-columns:minmax(0,1.25fr) minmax(295px,1fr)}.calendar-scroll{padding:13px 11px}.calendar-bar .bar-subtitle{display:none}.scope-select select{max-width:112px}.panel-toolbar{flex-wrap:wrap}}@media (max-width:840px){.app-shell{gap:8px;min-height:100svh;padding:8px}.topbar{border-radius:12px;gap:7px;min-height:65px;padding:9px 10px}.brand-icon{border-radius:10px;width:34px;height:34px}.brand-title{font-size:14px}.brand-lockup{gap:7px}.journey-heading{min-width:0}.journey-title{text-overflow:ellipsis;max-width:100%;font-size:14px}.journey-meta{white-space:nowrap;text-overflow:ellipsis;font-size:10px;overflow:hidden}.topbar-actions{gap:4px}.topbar-actions .icon-button{width:29px;height:29px}.top-action{min-height:30px;padding:7px 8px}.journey-ribbon{border-radius:12px;padding:9px 10px}.ribbon-header{margin-bottom:7px}.ribbon-links>span{display:none}.ribbon-bars{height:20px}.ribbon-chunk span{font-size:9px;line-height:20px}.ribbon-labels{margin-top:4px}.ribbon-label{font-size:9px}.mobile-tabs{background:#e8eff5;border-radius:10px;grid-template-columns:1fr 1fr;gap:3px;padding:3px;display:grid}.mobile-tab{color:#698094;background:0 0;border:0;border-radius:8px;justify-content:center;align-items:center;gap:7px;padding:9px;font-weight:750;display:flex}.mobile-tab.active{color:#2b668f;background:#fff;box-shadow:0 1px 5px #2a43581a}.workspace{flex:1;height:auto;min-height:0;display:block}.calendar-panel{height:calc(100svh - 242px);min-height:450px}.right-panel{grid-template-rows:minmax(300px,1.3fr) minmax(180px,.7fr);height:calc(100svh - 242px);min-height:460px;display:none}.workspace.show-map .calendar-panel{display:none}.workspace.show-map .right-panel{display:grid}.month-title{font-size:16px}.month-block{margin-bottom:18px}.week-row{height:72px}.week-row.multi-lane{height:98px}.calendar-bar{height:28px;padding:0 5px;top:29px}.calendar-bar .bar-label{font-size:10px}.calendar-bar .bar-handle{opacity:.7}.ideas-tray{min-height:72px;padding:9px 11px}.ideas-title{font-size:11px}.map-viewport{min-height:220px}.map-footer{padding:7px 9px}.details-panel{padding:11px}.fit-button{padding:7px 5px;font-size:9px}.map-fit-actions{gap:3px}}@media (max-width:410px){.brand-title{font-size:12px}.journey-heading{max-width:128px}.topbar-actions .icon-button,.ribbon-labels{display:none}.calendar-toolbar{gap:7px;padding:9px 8px}.scope-toggle button{padding:6px 7px;font-size:10px}.scope-select select{max-width:112px;padding:6px;font-size:10px}.calendar-help{padding:6px 8px;font-size:10px}.calendar-scroll{padding:9px 6px}.weekday-header span{font-size:9px}.day-cell{padding:6px 3px;font-size:10px}.week-row{height:69px}.calendar-bar{height:25px}.calendar-bar .bar-label{font-size:9px}.map-mode-name{display:none}.drawer-sheet{padding:20px 15px}.search-row .button{padding:8px 6px;font-size:10px}.place-result{flex-wrap:wrap}.place-result-actions{justify-content:flex-end;width:100%}.version-compare{gap:6px}.compare-column{padding:8px}}.save-indicator.pending{color:#9d5b17;font-weight:800}.save-indicator.pending .save-dot{background:#e9a240;box-shadow:0 0 0 3px #fce8c9}.ribbon-bars{background:repeating-linear-gradient(90deg,#f0f5f8 0 1px,#0000 1px 7.1428%);border-radius:6px;min-height:29px;display:block;position:relative}.ribbon-bars .ribbon-chunk{box-sizing:border-box;border-radius:6px;min-width:0;margin:0}.ribbon-bars .ribbon-chunk.ribbon-conflict{outline-offset:-3px;z-index:3;outline:3px solid #b7493f}.ribbon-labels{justify-content:space-between;margin-top:4px;display:flex}.ribbon-labels span{color:#8a98a7;font-size:10px}.calendar-bar.conflict{outline-offset:2px;outline:3px solid #dc514c;box-shadow:inset 0 0 0 1px #fff,0 1px 8px #dc514c60}.calendar-bar .bar-handle{opacity:.75;background:#ffffff2e;width:15px}.calendar-bar .bar-handle.left{left:0}.calendar-bar .bar-handle.right{right:0}.calendar-bar .bar-handle:after{left:6px}.draft-notice,.conflict-notice{border-radius:8px;margin:9px 0;padding:9px 10px;font-size:11px;font-weight:700;line-height:1.45}.draft-notice{color:#945c19;background:#fff4df;border:1px solid #f7d395}.conflict-notice{color:#a8322f;background:#fff0ee;border:1px solid #f6b7b0}.edit-review{border:2px solid #f4c482;box-shadow:0 12px 42px #1c344757}.edit-review .review-copy strong{font-size:13px}@media (max-width:840px){.edit-review{padding:9px 11px;bottom:8px}.edit-review .review-copy{flex-basis:100%;min-width:100%}.edit-review button{flex:1}}.mobile-edit-strip{display:none}@media (max-width:840px){.mobile-edit-strip{background:#f4f8fb;border-top:1px solid #dbe7ee;flex-shrink:0;align-items:center;gap:7px;min-height:52px;padding:9px 10px;display:flex}.mobile-stay-name{color:#526d82;flex-direction:column;flex:1;gap:1px;min-width:0;font-size:11px;display:flex}.mobile-stay-name strong{color:#29465b;white-space:nowrap;text-overflow:ellipsis;font-weight:800;overflow:hidden}.mobile-stay-name span{white-space:nowrap;font-size:10px}.mobile-edit-strip button{color:#2e5d7f;background:#fff;border:1px solid #d4e2eb;border-radius:7px;min-width:36px;min-height:32px;padding:5px 8px;font-size:11px;font-weight:750}.mobile-edit-strip button:disabled{opacity:.35}.edit-review.inline-review{flex-shrink:0;gap:7px;width:auto;max-height:175px;margin:8px 9px 3px;padding:9px;position:relative;bottom:auto;left:auto;overflow:auto;transform:none;box-shadow:0 3px 12px #20395229}.edit-review.inline-review .review-copy{flex-basis:100%;min-width:100%}.edit-review.inline-review button{flex:1;min-width:0;padding:7px 4px;font-size:10px}}.calendar-bar{padding-right:33px}.calendar-bar .bar-lock-toggle{z-index:5;color:#fff;opacity:0;cursor:pointer;touch-action:manipulation;background:#0e264147;border:1px solid #ffffff73;border-radius:6px;place-items:center;width:23px;height:23px;padding:0;transition:opacity .13s,background .13s;display:grid;position:absolute;top:4px;right:17px}.calendar-bar .bar-lock-toggle svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linejoin:round;stroke-linecap:round;pointer-events:none;width:14px;height:14px}.calendar-bar.selected .bar-lock-toggle,.calendar-bar:hover .bar-lock-toggle,.calendar-bar:focus-within .bar-lock-toggle,.calendar-bar .bar-lock-toggle.is-locked{opacity:1}.calendar-bar .bar-lock-toggle:hover,.calendar-bar .bar-lock-toggle:focus-visible{opacity:1;background:#081d34b8}.calendar-bar.locked{filter:saturate(.75)}.calendar-bar.locked .bar-handle{display:none}.calendar-bar .bar-lock-toggle:focus-visible{outline-offset:1px;outline:2px solid #fff}.calendar-bar .bar-label{flex:1;min-width:0;padding-right:0}.calendar-bar:not(.end) .bar-lock-toggle{right:4px}.lock-notice{color:#2e5873;background:#edf6fc;border:1px solid #b8d5e6;border-radius:7px;padding:8px 10px;font-size:11px;font-weight:700}.mobile-edit-strip [data-mobile-lock] svg{stroke-width:2px;fill:none;stroke:currentColor;width:17px;height:17px}@media (hover:none){.calendar-bar .bar-lock-toggle{opacity:.84}}@media (max-width:840px){.calendar-bar .bar-lock-toggle{opacity:.88}.mobile-edit-strip [data-mobile-undo]{padding:5px 7px}}.chain-head{letter-spacing:.075em;color:#8797a7;justify-content:space-between;gap:12px;margin-top:13px;margin-bottom:6px;font-size:9px;font-weight:800;display:flex}.chain-head small{letter-spacing:0;color:#8193a5;font-size:10px;font-weight:550}.leg-chain{scrollbar-width:thin;scrollbar-color:#cadce8 transparent;align-items:center;gap:4px;min-width:0;padding:2px 0 5px;display:flex;overflow:auto hidden}.chain-leg{--chain-color:#6392b4;border:1px solid #dae5ed;border-left:4px solid var(--chain-color);background:#f5f8fb;border-radius:9px;flex:none;align-items:center;gap:1px;max-width:188px;min-height:32px;padding:3px 4px;display:inline-flex}.chain-open{color:#344d62;text-overflow:ellipsis;white-space:nowrap;background:0 0;border:0;max-width:116px;padding:3px 4px;font-size:11px;font-weight:750;overflow:hidden}.chain-lock{color:#89a;background:0 0;border:1px solid #0000;border-radius:6px;flex:none;justify-content:center;align-items:center;width:27px;height:25px;display:inline-flex}.chain-lock svg,.chain-link svg{stroke:currentColor;stroke-width:1.8px;fill:none;stroke-linecap:round;stroke-linejoin:round;pointer-events:none;width:15px;height:15px}.chain-lock:hover,.chain-lock.is-locked{color:#9b6b2a;background:#fff0d9;border-color:#f0d7af}.chain-link{color:#8193a4;background:#fff;border:1px solid #e0e8ef;border-radius:7px;flex:none;align-items:center;gap:3px;height:28px;padding:4px 6px;font-size:10px;font-weight:680;display:inline-flex}.chain-link.is-linked{color:#166d7a;background:#e5f6f6;border-color:#9bd6d1}.chain-link:hover{background:#f0f8fc;border-color:#71b6cb}.calendar-scroll{scrollbar-gutter:stable;position:relative}.continuous-header{z-index:14;background:#fff;border-bottom:1px solid #dce6ed;position:sticky;top:0;box-shadow:0 5px 8px #2b41560e}.continuous-heading{align-items:center;gap:11px;min-height:35px;padding:5px 10px;display:flex}.continuous-heading strong{color:#253e53;letter-spacing:-.025em;font-size:15px;font-weight:800}.continuous-heading .eyebrow{font-size:9px}.continuous-heading .stream-hint{color:#95a5b3;margin-left:auto;font-size:10px;font-weight:550}.continuous-header .weekday-header{align-items:center;min-height:25px;margin:0}.continuous-header .weekday-header span{padding:4px 0 7px}.calendar-stream{border-top:0;margin-bottom:10px}.calendar-stream>.week-row{border-color:currentColor #e5edf3 #e5edf3;border-top-style:none;border-top-width:0;height:94px;min-height:94px;position:relative}.calendar-stream>.week-row:last-child{border-bottom:1px solid #e5edf3}.calendar-stream .day-cell{touch-action:pan-y;min-width:0;padding-top:9px}.month-start-label{color:#3c7ca9;letter-spacing:.09em;margin-top:1px;font-size:9px;font-weight:820;display:block}.calendar-stream .calendar-bar{touch-action:none;will-change:auto;height:29px}.calendar-stream .calendar-bar.preview{opacity:.87;box-shadow:0 0 0 2px #295d953b,0 2px 9px #1f456d2e}.calendar-stream .calendar-bar .bar-lock-toggle{opacity:.74}.calendar-stream .calendar-bar .bar-lock-toggle.is-locked{opacity:1}.calendar-stream .calendar-bar.selected{z-index:7}.range-ghost{z-index:10;pointer-events:none;color:#225e80;white-space:nowrap;background:#60a5c538;border:2px dashed #4286ae;border-radius:3px;align-items:center;height:29px;padding:0 7px;font-size:11px;font-weight:800;display:flex;position:absolute;overflow:hidden}.range-ghost.start{border-top-left-radius:8px;border-bottom-left-radius:8px}.range-ghost.end{border-top-right-radius:8px;border-bottom-right-radius:8px}.drag-tooltip{z-index:90;pointer-events:none;color:#fff;white-space:normal;background:#213f58;border-radius:8px;min-width:140px;max-width:310px;padding:9px 12px;font-size:11px;font-weight:720;position:fixed;box-shadow:0 6px 24px #16334c37}.drag-tooltip.invalid{background:#ac453a}.quick-add{z-index:85;background:#fff;border:1px solid #d5e4ee;border-radius:15px;width:min(325px,100vw - 24px);max-height:min(440px,100vh - 24px);padding:14px;position:fixed;overflow:auto;box-shadow:0 16px 58px #142d4545}.quick-add-head{justify-content:space-between;align-items:flex-start;gap:8px;margin-bottom:11px;display:flex}.quick-add-head strong{font-size:14px;font-weight:830;display:block}.quick-add-head small{color:#6f859a;margin-top:4px;font-size:11px;display:block}.quick-add-input{background:#fbfdff;border:1px solid #baccdb;border-radius:9px;align-items:center;gap:8px;padding:8px 9px;display:flex}.quick-add-input:focus-within{border-color:#4d9ac5;outline:3px solid #e3f1f8}.quick-add-input svg{stroke:#7290a6;fill:none;stroke-width:1.8px;width:16px;height:16px}.quick-add-input input{color:#274459;background:0 0;border:0;outline:0;width:100%;min-width:0;font-size:12px}.quick-matches{max-height:194px;margin-top:6px;overflow-y:auto}.quick-place{text-align:left;color:#2b4053;background:0 0;border:0;border-radius:7px;align-items:center;gap:8px;width:100%;padding:9px 7px;display:flex}.quick-place:hover,.quick-place:focus-visible{background:#eaf4fa}.quick-place strong{flex:1;font-size:12px}.quick-place small{color:#8194a5;font-size:10px}.quick-ideas{border-top:1px solid #e9edf2;flex-wrap:wrap;gap:5px;margin-top:6px;padding-top:7px;display:flex}.quick-idea{color:#4a657b;background:#f5f8fa;border:1px solid #e2e9ef;border-radius:6px;align-items:center;gap:4px;padding:5px 7px;font-size:10px;display:flex}.quick-idea svg{fill:none;stroke:currentColor;stroke-width:2px;width:12px;height:12px}.quick-idea span{color:#8698a7;font-size:9px}.quick-empty{color:#768ca0;margin:8px 4px;font-size:11px}.quick-add>.quiet-link{margin-top:10px}@media (max-width:840px){.journey-ribbon{padding-bottom:10px}.chain-head{margin-top:9px}.chain-head small{display:none}.chain-leg{max-width:130px}.chain-open{max-width:91px;font-size:10px}.chain-link span{display:none}.chain-link{padding:4px 6px}.continuous-heading{gap:6px;min-height:31px}.continuous-heading .eyebrow{display:none}.continuous-heading strong{font-size:13px}.continuous-heading .stream-hint{font-size:9px}.calendar-stream .calendar-bar{height:27px}.calendar-stream .week-row{min-height:90px}}@media (max-width:410px){.continuous-heading .stream-hint{display:none}.quick-add{padding:12px}.month-start-label{font-size:8px}}.ribbon-bars .ribbon-chunk span{font-size:10px;line-height:23px!important}.drag-ghost{--drag-color:#517cb3;z-index:200;pointer-events:none;background:var(--drag-color);color:#fff;opacity:.92;will-change:transform,width,left;border:2px solid #fffffff2;border-radius:8px;align-items:center;min-width:26px;max-width:none;padding:0 11px;display:flex;position:fixed;overflow:hidden;box-shadow:0 6px 22px #142e4b59,0 0 0 2px #2368a173}.drag-ghost-label{white-space:nowrap;text-overflow:ellipsis;text-shadow:0 1px 2px #2345;font-size:11px;font-weight:800;overflow:hidden}.drag-ghost.resizing{border-style:dashed;box-shadow:0 4px 18px #142e4b42,0 0 0 2px #2368a17a}.drag-ghost.blocked{opacity:.84;border:2px dashed #fff;box-shadow:0 4px 20px #ab383857;background:#b84e47!important}.calendar-stream .calendar-bar.drag-origin:not(.preview){opacity:.4;filter:saturate(.72)}.calendar-stream .calendar-bar.drag-origin.preview{opacity:.88}.calendar-scroll.is-edit-dragging{cursor:grabbing}.calendar-scroll.is-edit-dragging .day-cell.target-day{background-color:#e4f2fc;box-shadow:inset 0 0 0 2px #5a9ac5}.journey-ribbon.is-collapsed .ribbon-bars,.journey-ribbon.is-collapsed .ribbon-labels,.journey-ribbon .chain-head{display:none}#ribbonToggle svg{fill:none;stroke:currentColor;stroke-width:2px;width:13px;height:13px;transition:transform .15s}.journey-ribbon:not(.is-collapsed) #ribbonToggle svg{transform:rotate(180deg)}.ribbon-bars{height:48px;min-height:48px}.ribbon-bars .ribbon-chunk span{line-height:23px!important}@media (min-width:841px){html,body{overflow:hidden}.app-shell{gap:7px;height:100dvh;min-height:0;padding:8px 12px}.topbar{border-radius:12px;gap:12px;min-height:54px;padding:7px 12px;box-shadow:0 1px 4px #1d3c5710}.brand-icon{border-radius:9px;width:31px;height:31px}.brand-icon svg{width:23px;height:23px}.brand-lockup{gap:8px}.brand-title{letter-spacing:-.035em;font-size:14px}.brand-subtitle{display:none}.topbar-divider{height:27px}.journey-title{padding:1px 3px;font-size:16px}.journey-meta{margin:1px 3px 0;font-size:10px}.topbar-actions{gap:5px}.topbar-actions .icon-button{width:29px;height:29px}.top-action{min-height:29px;padding:6px 10px}.save-indicator{margin-right:5px;font-size:10px}.journey-ribbon{border-radius:11px;flex:none;padding:6px 12px 7px;box-shadow:0 1px 4px #1d3c5710}.ribbon-header{min-height:16px;margin-bottom:4px}.ribbon-header .eyebrow{font-size:9px}.ribbon-links{gap:9px}.ribbon-links>span{font-size:10px}.ribbon-links .quiet-link{padding:0 2px;font-size:10px}.leg-chain{gap:3px;padding:0 0 2px}.chain-leg{border-radius:7px;min-height:28px;padding:1px 3px}.chain-open{padding:2px 3px;font-size:10px}.chain-lock{width:23px;height:22px}.chain-link{height:24px;padding:2px 5px;font-size:9px}.workspace{flex:1;grid-template-columns:minmax(0,1.59fr) minmax(310px,.98fr);gap:8px;height:auto;min-height:0}.panel{border-radius:11px}.right-panel{grid-template-rows:minmax(235px,1.35fr) minmax(155px,.65fr);gap:8px}.panel-toolbar{min-height:42px;padding:6px 10px}.scope-toggle button{padding:5px 9px}.scope-select select{padding:5px 21px 5px 7px}.calendar-help{display:none}.calendar-scroll{padding:3px 10px 11px}.continuous-heading{min-height:29px;padding:3px 8px}.continuous-heading .eyebrow{display:none}.continuous-heading strong{font-size:14px}.continuous-header .weekday-header{min-height:22px}.continuous-header .weekday-header span{padding:2px 0 4px}.map-toolbar{padding:8px 11px 7px}.map-title{font-size:14px}.map-footer{padding:6px 10px}.details-panel{padding:10px 12px}.ideas-tray{min-height:60px;padding:7px 10px 9px}.ideas-title{font-size:11px}.idea-cards{margin-top:6px}}@media (max-width:840px){.topbar{min-height:51px;padding:6px 8px}.journey-ribbon{padding:5px 8px 6px}.ribbon-header{margin-bottom:4px}.ribbon-header .eyebrow{font-size:9px}.ribbon-links{gap:8px}.ribbon-links .quiet-link{padding:0;font-size:10px}.chain-head{display:none}.leg-chain{gap:3px;padding:0 0 2px}.chain-leg{min-height:27px;padding:2px 3px}.chain-lock{width:22px;height:23px}.chain-link{height:24px;padding:2px 4px}.calendar-panel,.right-panel{height:calc(100svh - 180px);min-height:390px}.calendar-help{display:none}.panel-toolbar{min-height:43px;padding:6px 9px}.calendar-scroll{padding:5px 6px 9px}.continuous-heading{min-height:27px;padding:3px 7px}.continuous-header .weekday-header{min-height:22px}.continuous-header .weekday-header span{padding:2px 0 4px}}.stay-chain-chip.is-selected{background:#ecf5fd;border-color:#8fb9d7;box-shadow:0 0 0 1px #8fb9d766}.stay-chain-chip .chain-open{max-width:126px}.stay-link.out-of-order{color:#ad6a36;border-style:dashed;border-color:#ce9b6b}.chain-empty{color:#8296a5;padding:4px 0;font-size:11px}.calendar-stream .bar-link-toggle{z-index:5;color:#fff;cursor:pointer;touch-action:manipulation;opacity:0;background:#102c444f;border:1px solid #ffffff8c;border-radius:6px;place-items:center;width:23px;height:23px;transition:opacity .12s,background .12s;display:grid;position:absolute;top:4px;right:44px}.calendar-stream .bar-link-toggle.is-linked{opacity:.74;background:#ffffff4d}.calendar-stream .calendar-bar:hover .bar-link-toggle,.calendar-stream .calendar-bar.selected .bar-link-toggle,.calendar-stream .bar-link-toggle:focus-visible{opacity:1}.calendar-stream .bar-link-toggle svg{fill:none;stroke:currentColor;stroke-width:1.8px;width:14px;height:14px}.calendar-stream .bar-link-toggle:hover{background:#0c2743a6}.stay-connection-row{color:#4b6277;background:#f4f8fb;border:1px solid #e3ecf3;border-radius:9px;justify-content:space-between;align-items:center;gap:9px;margin:5px 0 9px;padding:8px 9px;font-size:11px;display:flex}.stay-connection-row span{align-items:center;gap:7px;min-width:0;line-height:1.3;display:flex}.stay-connection-row span svg{stroke:currentColor;fill:none;stroke-width:1.8px;flex:none;width:15px;height:15px}.stay-connection-row .button{min-height:28px;padding:5px 9px}.idea-nights{color:#416982;background:#edf3f7;border-radius:4px;padding:2px 4px;font-size:9px}@media (max-width:840px){.mobile-edit-strip{scrollbar-width:thin;overflow-x:auto}.mobile-edit-strip>button{white-space:nowrap;flex-shrink:0}.stay-connection-row{flex-wrap:wrap}}.chain-to-ideas{color:#a07b39;background:#fcf6e8;border:1px solid #e2d7bc;border-radius:6px;flex:none;place-items:center;width:23px;height:23px;padding:0;display:inline-grid}.chain-to-ideas svg{stroke:currentColor;stroke-width:1.8px;fill:none;width:14px;height:14px}.chain-to-ideas:hover{background:#f6e5bf;border-color:#d7b36b}.chain-to-ideas:disabled{opacity:.34}.calendar-stream .bar-link-toggle.is-linked{opacity:.98;background:#095255ba;border-color:#ffffffd9}.calendar-stream .bar-link-toggle.before:after,.calendar-stream .bar-link-toggle.after:after{color:#fff;text-shadow:0 1px 3px #1c3d57;pointer-events:none;font-size:8px;font-weight:850;position:absolute;top:-8px}.calendar-stream .bar-link-toggle.before:after{content:"L";left:1px}.calendar-stream .bar-link-toggle.after:after{content:"R";right:1px}@media (max-width:840px){.mobile-edit-strip [data-mobile-link-peer]{align-items:center;gap:3px;display:inline-flex}.mobile-edit-strip [data-mobile-link-peer][aria-pressed=true]{color:#166d60;background:#e0f4ed;border-color:#93d4c2}.mobile-edit-strip [data-mobile-link-peer] svg{stroke:currentColor;stroke-width:2px;fill:none;width:13px;height:13px}.calendar-stream .bar-link-toggle.before,.calendar-stream .bar-link-toggle.after{opacity:.85}}.chain-clear-links{color:#567c92;cursor:pointer;background:#f7fafc;border:1px dashed #a2bac9;border-radius:7px;flex:none;padding:5px 7px;font-size:10px;font-weight:750}.chain-clear-links:hover{background:#eaf5fa;border-color:#6e9abb}.calendar-stream{--stay-top:24px;background:#fff;border:1px solid #e2e9f0;border-top:0;border-radius:0 0 9px 9px;overflow:hidden}.calendar-stream>.week-row,.calendar-stream .week-row{background:#fff;border:0;border-bottom:1px solid #e6ecf2;height:74px;min-height:74px}.calendar-stream .week-row:last-child{border-bottom:0}.calendar-stream .day-cell{color:#496075;border-right:1px solid #edf1f5;padding:7px 7px 0;font-size:11px;line-height:1.2}.calendar-stream .day-cell:last-of-type{border-right:0}.calendar-stream .day-cell.weekend{background:#f7f9fc}.calendar-stream .day-cell.month-start{background:linear-gradient(90deg,#2c79a917,#0000 77%);box-shadow:inset 2px 0 #88acc8}.calendar-stream .day-cell.month-start.weekend{background:linear-gradient(90deg,#2c79a917,#f7f9fc 84%)}.calendar-stream .day-date-label{white-space:nowrap;z-index:1;font-variant-numeric:tabular-nums;align-items:baseline;gap:5px;max-width:100%;display:inline-flex;position:relative}.calendar-stream .day-date-label .today-number{font-weight:670;position:static}.calendar-stream .day-cell.month-start .today-number{color:#276e9e;font-weight:850}.calendar-stream .month-start-label{letter-spacing:.025em;color:#286f9e;background:#e8f3fa;border-radius:4px;align-items:center;margin:0;padding:1px 4px;font-size:9px;font-weight:800;line-height:1.15;display:inline-flex}.calendar-stream .calendar-bar{border:1px solid #17374f1f;border-radius:3px;align-items:center;height:24px;padding:0 33px 0 8px;box-shadow:0 1px 3px #1c3d571f}.calendar-stream .calendar-bar.start{border-top-left-radius:6px;border-bottom-left-radius:6px}.calendar-stream .calendar-bar.end{border-top-right-radius:6px;border-bottom-right-radius:6px}.calendar-stream .calendar-bar.selected{outline-offset:1px;outline:2px solid #29485f}.calendar-stream .calendar-bar .bar-label{text-overflow:ellipsis;white-space:nowrap;flex:auto;align-self:center;min-width:0;margin:0;padding:0;font-size:10px;font-weight:750;line-height:1.2;overflow:hidden}.calendar-stream .calendar-bar .bar-subtitle{vertical-align:baseline;margin-left:3px;font-size:9px;line-height:1}.calendar-stream .bar-link-toggle,.calendar-stream .calendar-bar .bar-lock-toggle{width:20px;height:20px;box-shadow:none;border-radius:5px;justify-content:center;align-items:center;padding:0;top:50%;transform:translateY(-50%)}.calendar-stream .bar-link-toggle svg,.calendar-stream .calendar-bar .bar-lock-toggle svg{flex:none;width:13px;height:13px;display:block}.calendar-stream .bar-link-toggle.before{left:19px;right:auto}.calendar-stream .bar-link-toggle.after{left:auto;right:38px}.calendar-stream .calendar-bar .bar-lock-toggle{right:14px}.calendar-stream .calendar-bar:not(.end) .bar-lock-toggle{right:4px}.calendar-stream .bar-link-toggle.before:after,.calendar-stream .bar-link-toggle.after:after{content:none}.calendar-stream .calendar-bar .bar-handle{width:11px;top:2px;bottom:2px}.calendar-stream .calendar-bar .bar-handle:after{height:12px;top:3px;left:4px}.calendar-stream .range-ghost{height:24px;font-size:10px}.calendar-stream .calendar-bar.short-segment:has(.bar-link-toggle) .bar-label{font-size:9px}.leg-chain{align-items:center;gap:4px}.chain-leg,.stay-chain-chip{align-items:center;gap:3px}.chain-open,.chain-lock,.chain-link,.chain-to-ideas{vertical-align:middle;justify-content:center;align-self:center;align-items:center;line-height:1;display:inline-flex}.chain-leg .chain-open{height:23px}.chain-link{gap:4px;height:26px;min-height:26px}.chain-link svg,.chain-lock svg,.chain-to-ideas svg{flex:none;display:block}.chain-link span{align-items:center;line-height:1;display:inline-flex}@media (max-width:840px){.calendar-stream{--stay-top:27px}.calendar-stream>.week-row,.calendar-stream .week-row{height:78px;min-height:78px}.calendar-stream .day-cell{padding:7px 4px 0}.calendar-stream .calendar-bar{height:24px}.calendar-stream .calendar-bar.short-segment:has(.bar-link-toggle) .bar-lock-toggle{display:none}.calendar-stream .calendar-bar.short-segment:has(.bar-link-toggle.before) .bar-link-toggle.after{display:none}.calendar-stream .calendar-bar.short-segment:has(.bar-link-toggle) .bar-label{visibility:hidden}.calendar-stream .bar-link-toggle.before{left:15px}.calendar-stream .bar-link-toggle.after{right:14px}}@media (max-width:410px){.calendar-stream>.week-row,.calendar-stream .week-row{height:76px;min-height:76px}.calendar-stream .day-cell{padding:6px 3px 0}.calendar-stream .month-start-label{letter-spacing:0;padding:1px 2px;font-size:8px}.calendar-stream .day-date-label{gap:3px}}.calendar-stream .calendar-bar.short-segment:has(.bar-link-toggle) .bar-label{visibility:hidden}.calendar-stream .calendar-bar{min-width:0;padding-left:19px;padding-right:39px}.calendar-stream .calendar-bar:has(.bar-link-toggle.before){padding-left:47px}.calendar-stream .calendar-bar:has(.bar-link-toggle.after){padding-right:65px}.calendar-stream .calendar-bar:has(.bar-link-toggle.before) .bar-label{padding-left:0}.calendar-stream .calendar-bar.short-segment .bar-label{visibility:hidden}.calendar-stream .bar-link-toggle.before{left:18px}.calendar-stream .bar-link-toggle.after{right:39px}.calendar-stream .calendar-bar .bar-handle.left{left:0}.calendar-stream .calendar-bar .bar-handle.right{right:0}.calendar-stream .calendar-bar.inactive-leg{color:#647587;box-shadow:none;opacity:.93;cursor:pointer;border:1px solid #d2dce5;background:#e2e9ee!important}.calendar-stream .calendar-bar.inactive-leg:hover{color:#334e63;outline:1px solid #99b4c6;background:#d4e0e9!important}.calendar-stream .calendar-bar.inactive-leg .bar-label{font-weight:650}.calendar-stream .calendar-bar.empty-leg{color:#496f89;box-shadow:none;border:1px dashed #9dbbce;background:repeating-linear-gradient(110deg,#edf4f9,#edf4f9 11px,#e4eff6 11px 23px)!important}.calendar-stream .calendar-bar.empty-leg:not(.inactive-leg){pointer-events:none}.calendar-stream .calendar-bar.empty-leg .bar-label{font-weight:750;visibility:visible!important}.calendar-stream .calendar-bar.empty-leg.short-segment .bar-label{visibility:hidden!important}.calendar-stream .calendar-bar[data-kind=stay]{border-bottom:3px solid var(--leg-accent,#e9f0f4)}.calendar-stream .calendar-bar.inactive-leg{border-bottom-color:#c9d5de}.ideas-tray.drop-target{outline-offset:-3px;outline:2px dashed #38a17a;box-shadow:inset 0 0 0 2px #fffa;background:#e1f5ed!important}.ideas-tray.drop-target .ideas-title{color:#147657}.ideas-tray.drop-target .ideas-title:after{content:" - release to unschedule";font-size:11px;font-weight:750}.drag-ghost.resize-cursor{opacity:.95;border:2px solid #2a78ac;border-radius:5px;padding:0;box-shadow:0 0 0 3px #d8ecf8,0 4px 10px #25465b2a;background:#f3fcff!important}.drag-ghost.resize-cursor:before{content:"";background:#287aac;border-radius:2px;width:2px;position:absolute;top:3px;bottom:3px;left:5px}.drag-ghost.resize-cursor .drag-ghost-label{display:none}.versions-sheet .version-row{flex-wrap:wrap;align-items:center;gap:6px}.versions-sheet .version-row .version-name{flex:1;min-width:150px}.versions-sheet .version-row .button{min-height:29px;padding:5px 9px}.scope-toggle button{padding-left:9px;padding-right:9px}@media (max-width:840px){.calendar-stream .calendar-bar{padding-left:14px;padding-right:29px}.calendar-stream .calendar-bar:has(.bar-link-toggle.before){padding-left:40px}.calendar-stream .calendar-bar:has(.bar-link-toggle.after){padding-right:48px}.calendar-stream .bar-link-toggle.before{left:14px}.calendar-stream .bar-link-toggle.after{right:27px}.scope-toggle button{padding:6px 7px;font-size:11px}}.react-fragment,.chain-fragment{display:contents}.recovery-overlay{z-index:1500;background:#13243680;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.recovery-dialog{color:#243345;background:#fff;border-radius:16px;width:100%;max-width:470px;padding:28px;box-shadow:0 16px 60px #00000038}.recovery-dialog h2{margin:0 0 12px;font-size:22px}.recovery-dialog p{line-height:1.6}.recovery-actions{flex-wrap:wrap;gap:9px;margin-top:22px;display:flex}.save-indicator:has(+.button){max-width:220px}.save-indicator.failed .save-dot,.save-indicator.conflict .save-dot{background:#dc5060;box-shadow:0 0 0 3px #dc50601a}.save-indicator.saving .save-dot{background:#d49b3c;box-shadow:0 0 0 3px #d49b3c1a}.save-indicator.failed,.save-indicator.conflict{color:#a83445}.auth-screen{background:linear-gradient(145deg,#e7f4f8,#f5f8fd 56%,#f4edf8);justify-content:center;align-items:center;min-height:100vh;padding:25px;display:flex}.auth-card{color:#253c52;background:#fff;border:1px solid #dee6f0;border-radius:22px;width:min(100%,450px);padding:36px;font-family:system-ui,-apple-system,Arial,sans-serif;box-shadow:0 26px 70px #1c394c21}.auth-mark{color:#fff;background:#356cb7;border-radius:14px;justify-content:center;align-items:center;width:48px;height:48px;margin-bottom:18px;font-size:27px;display:flex}.auth-card h1{letter-spacing:-.5px;margin:0 0 8px;font-size:26px;font-weight:750}.auth-intro{color:#65758a;margin:0 0 24px;font-size:14px;line-height:1.55}.auth-form{gap:15px;display:grid}.auth-label{gap:7px;font-size:13px;font-weight:650;display:grid}.auth-input{font:inherit;border:1px solid #cbd7e5;border-radius:9px;outline-color:#3b7ace;width:100%;padding:12px;font-size:15px}.auth-submit{color:#fff;cursor:pointer;background:#336fc0;border:0;border-radius:9px;width:100%;margin-top:4px;padding:12px 15px;font-size:15px;font-weight:700}.auth-submit:disabled{opacity:.5;cursor:wait}.auth-switch{color:#3b6aa2;cursor:pointer;background:0 0;border:none;width:100%;padding:17px 0 0;font-size:14px;font-weight:650;display:block}.auth-error,.owner-error{color:#b32939;margin:0;font-size:13px}.auth-footer{color:#7a8696;margin-top:24px;font-size:12px;line-height:1.5}.auth-codes{text-align:center;-webkit-user-select:all;user-select:all;background:#eff4fa;border:1px dashed #9fb3ce;border-radius:10px;padding:16px;font-size:14px;line-height:2}.owner-sheet{max-width:660px}.owner-sheet .version-card{margin-bottom:13px}.owner-message{color:#116e56;font-size:14px;line-height:1.5}.restore-confirm{background:#f2f6fa;border-radius:10px;gap:8px;margin-top:10px;padding:14px;display:grid}.restore-confirm p{color:#57687b;font-size:12px}@media (max-width:500px){.auth-card{padding:25px 20px}.auth-screen{padding:12px}}.mobile-link-strip{display:none}@media (max-width:840px){.calendar-stream .calendar-bar.two-day-segment .bar-label{visibility:hidden}.mobile-link-strip{scrollbar-width:thin;white-space:nowrap;background:#f4f8fb;border-top:1px solid #e3edf3;flex:none;align-items:center;gap:8px;padding:5px 10px 8px;display:flex;overflow-x:auto}.mobile-link-strip>span{color:#71879a;flex-shrink:0;font-size:10px;font-weight:800}.mobile-link-strip button{color:#366582;background:#fff;border:1px solid #cbdce7;border-radius:8px;flex-shrink:0;align-items:center;gap:5px;min-height:35px;padding:5px 10px;font-weight:650;display:inline-flex}.mobile-link-strip button[aria-pressed=true]{color:#176d5a;background:#e2f4ea;border-color:#85c8b3}.mobile-link-strip svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:14px;height:14px}}.touch-edit-hint{display:none}@media (pointer:coarse){.stream-hint{display:none}.touch-edit-hint{color:#75899b;font-size:10px;font-weight:600;display:inline}}.compact-save-status{display:none}@media (max-width:1320px){.topbar .header-save-action{display:none}.compact-save-status{color:#56718a;background:#f8fbfd;border:1px solid #dfe8ef;border-radius:9px;align-items:center;gap:8px;min-height:30px;padding:6px 10px;font-size:11px;font-weight:650;display:flex}.compact-save-status.saved{color:#27735b;background:#f3faf7;border-color:#e3f1e9}.compact-save-status.saving{color:#8a601a;background:#fef9ef;border-color:#f7e7c5}.compact-save-status.failed,.compact-save-status.conflict{color:#a43245;background:#fff3f4;border-color:#efcdd2}.compact-save-status>.save-dot{flex-shrink:0}.compact-save-status .status-copy{white-space:normal;overflow-wrap:anywhere;flex:1;min-width:0}.compact-save-status button{white-space:nowrap;background:#fff;border:1px solid;border-radius:7px;flex-shrink:0;padding:5px 7px;font-weight:800}}@media (max-width:410px){.compact-save-status{flex-wrap:wrap}.compact-save-status .status-copy{flex-basis:calc(100% - 18px)}}.nas-auth-page{background:linear-gradient(145deg,#e7f4f8,#f6f9fd 58%,#f2effa);justify-content:center;align-items:center;min-height:100dvh;padding:26px;display:flex}.nas-auth-card{color:#274054;background:#fff;border:1px solid #dce7ef;border-radius:20px;width:min(100%,460px);padding:36px;font:14px/1.5 system-ui,-apple-system,Segoe UI,sans-serif;box-shadow:0 22px 64px #253f5621}.nas-auth-mark{color:#fff;background:#366fbd;border-radius:12px;place-items:center;width:48px;height:48px;margin-bottom:16px;font-size:21px;font-weight:800;display:grid}.nas-auth-card h1{color:#193951;margin:4px 0 12px;font-size:30px}.nas-auth-card p{color:#597085;font-size:14px;line-height:1.6}.nas-auth-card form{gap:10px;margin-top:22px;display:grid}.nas-auth-card form label{color:#33536c;font-weight:700}.nas-auth-card form input{width:100%;min-height:46px;font:inherit;color:#193951;background:#fff;border:1px solid #bacbda;border-radius:9px;padding:10px 12px;font-size:16px}.nas-auth-card form button[type=submit]{min-height:45px;margin-top:9px}.nas-auth-card .nas-auth-link{color:#356db1;cursor:pointer;background:0 0;border:0;padding:12px 6px;font-weight:700}.nas-auth-card .nas-auth-error{color:#a12e40;background:#fff2f4;border-radius:8px;padding:9px 12px}.nas-auth-card .nas-auth-notice{color:#236c54;background:#f0f9f5;border-radius:8px;padding:9px 12px}.nas-auth-card .nas-auth-foot{color:#7a8da0;border-top:1px solid #e5edf4;margin-top:25px;padding-top:15px;font-size:12px}@media (max-width:480px){.nas-auth-page{padding:12px}.nas-auth-card{padding:24px}}
