:root{color-scheme:light;--ink: #17212b;--muted: #687482;--line: #d9e0e6;--panel: #ffffff;--soft: #f5f7f9;--brand: #b20d13;--brand-dark: #141517;--brand-soft: #f4f4f4;--accent: #b21f35;--success: #2e7357;--warning: #a45732;--danger: #ad3f45}*{box-sizing:border-box}body{margin:0;background:#eef2f4;color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;letter-spacing:0}button,input,textarea,select{font:inherit}button{cursor:pointer}h1,h2,h3,h4,p{margin:0}.app-shell{display:grid;grid-template-columns:280px minmax(0,1fr);min-height:100vh}.sidebar{background:#fff;border-right:1px solid #dedede;display:flex;flex-direction:column;gap:20px;padding:22px}.brand{align-items:center;background:var(--brand);border-radius:8px;color:#fff;display:flex;gap:12px;min-height:104px;padding:14px}.brand-logo{background:#fff;border-radius:8px;height:52px;object-fit:contain;padding:7px;width:52px}.brand h1{color:#fff;font-size:20px;line-height:1.05}.brand p{color:#fff;font-size:16px;font-weight:800;margin-top:3px}.page-header p,.field span,.summary-row span,.empty-state{color:var(--muted)}.import-message{color:var(--success);font-weight:800;margin-top:6px}nav{display:grid;gap:10px}.backup-controls{border-top:1px solid var(--line);display:grid;gap:10px;padding-top:16px}button{border:1px solid var(--line);border-radius:8px;min-height:40px;padding:9px 12px}nav button{background:var(--brand-dark);border-color:#2b2d31;color:#fff;font-size:17px;font-weight:900;min-height:46px;padding:10px 14px;text-align:left}nav button.active{background:var(--brand-soft);border-color:var(--brand);border-left-width:5px;border-right-width:5px;color:var(--brand-dark)}.backup-controls button,.backup-controls .file-button{background:#fff;border-color:var(--line);color:var(--brand-dark);font-size:14px;font-weight:900;justify-content:center;width:100%}.primary{background:var(--brand);border-color:var(--brand);color:#fff;font-weight:800}a.primary{align-items:center;border-radius:8px;display:inline-flex;justify-content:center;min-height:40px;padding:9px 12px;text-decoration:none}.danger{background:#fff1f2;border-color:#ecc4c7;color:var(--danger);font-weight:800}.password-page{align-items:center;background:#eef2f4;display:grid;min-height:100vh;padding:24px}.password-card{background:var(--panel);border:1px solid var(--line);border-radius:8px;box-shadow:0 18px 40px #17212b1a;display:grid;gap:18px;justify-self:center;max-width:480px;padding:24px;width:min(100%,480px)}.password-brand{min-height:120px}.page{align-content:start;display:grid;gap:18px;min-width:0;padding:24px}.dashboard-page{overflow:hidden;position:relative}.dashboard-page>*:not(.dashboard-watermark){position:relative;z-index:1}.dashboard-watermark{height:min(58vh,600px);left:50%;opacity:.035;pointer-events:none;position:absolute;top:56%;transform:translate(-50%,-50%);-webkit-user-select:none;user-select:none;width:auto;z-index:0}.page-header{align-items:center;display:flex;gap:16px;justify-content:space-between}.page-header h2{font-size:clamp(26px,4vw,38px);line-height:1.05}.metric-grid{display:grid;gap:12px;grid-template-columns:repeat(4,minmax(160px,1fr))}.metric,.panel,.editor,.day-column,.task-card,.travel-card{background:var(--panel);border:1px solid var(--line);border-radius:8px}.metric{border-left:5px solid var(--brand);padding:16px;text-align:left}.metric.warning{border-left-color:var(--warning)}.metric.done,.metric.calm{border-left-color:var(--brand)}.metric strong{display:block;font-size:34px;line-height:1}.metric span{color:var(--muted);font-size:13px;font-weight:800}.metric-toggle{cursor:pointer;min-height:auto;width:100%}.metric-toggle:hover,.metric-toggle.active{background:var(--brand-soft);border-color:var(--brand)}.dashboard-grid{display:grid;gap:14px;grid-template-columns:repeat(3,minmax(0,1fr))}.panel{display:grid;gap:12px;padding:16px}.stack{display:grid;gap:10px}.summary-row{background:transparent;border-left:0;border-right:0;border-bottom:0;border-radius:0;border-top:1px solid var(--line);color:var(--ink);display:grid;gap:4px;min-height:auto;padding-top:10px;text-align:left}.summary-button{cursor:pointer;padding:10px 0 0}.summary-button:hover{color:var(--brand)}.date-grid{display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));overflow-x:auto;padding-bottom:4px}.day-column{align-content:start;display:grid;gap:0;min-height:520px;padding:16px}.day-column h3{color:var(--brand-dark);font-size:22px;padding-bottom:12px;text-transform:none}.meeting-card{background:transparent;border:0;border-radius:0;border-top:1px solid var(--line);color:var(--ink);align-items:start;display:flex;gap:12px;justify-content:space-between;min-height:auto;padding:14px 0;text-align:left;width:100%}.meeting-card.selected{background:transparent;color:var(--ink)}.meeting-card:hover{color:var(--brand)}.meeting-card>span:first-child{display:grid;gap:6px;min-width:0}.meeting-card strong{color:var(--ink);font-size:19px;font-weight:950;line-height:1.2}.meeting-card:hover strong{color:var(--brand)}.meeting-card span span{color:var(--ink);font-size:18px;font-weight:750}.meeting-card small{color:#35404b;font-weight:750;overflow-wrap:anywhere}.meeting-card>small:last-child{color:var(--brand-dark);flex:0 0 auto;font-weight:900}.meeting-shell{display:grid;gap:8px}.meeting-shell .editor,.inline-meeting-editor .editor{max-height:none}.editor{display:grid;gap:14px;max-height:calc(100vh - 136px);overflow:auto;padding:16px}.editor-head,.section-title,.button-row{align-items:center;display:flex;gap:10px;justify-content:space-between}.button-row{flex-wrap:wrap}.button-row.left,.tripit-tools{justify-content:flex-start}.file-button{align-items:center;background:var(--brand-soft);border:1px solid var(--line);border-radius:8px;color:var(--brand-dark);cursor:pointer;display:inline-flex;font-weight:800;min-height:40px;padding:9px 12px}.file-button input{display:none}.tripit-drop-zone{align-items:center;background:#fff;border:2px dashed #d5dce3;border-radius:8px;color:var(--muted);display:flex;flex-direction:column;gap:4px;justify-content:center;margin-top:14px;min-height:92px;padding:18px;text-align:center;transition:background .15s ease,border-color .15s ease,color .15s ease}.tripit-drop-zone strong{color:var(--ink);font-size:16px}.tripit-drop-zone span{font-size:13px;font-weight:800}.tripit-drop-zone.active{background:#fff3f4;border-color:var(--brand);color:var(--brand)}.form-error{color:var(--danger);font-size:13px;font-weight:800}.form-message{color:var(--brand);font-size:13px;font-weight:800}.microsoft-setup{align-items:center;background:#fff;border:1px solid #bfd4dc;border-left:4px solid var(--warning);border-radius:8px;box-shadow:0 14px 32px #17212b14;display:grid;gap:14px;grid-template-columns:minmax(280px,1fr) minmax(220px,360px);padding:16px}.microsoft-setup h3{color:var(--brand-dark);font-size:18px}.microsoft-setup p{color:var(--muted);line-height:1.4;margin-top:4px}.setup-detail{background:var(--brand-soft);border:1px solid var(--line);border-radius:8px;color:var(--brand-dark);font-size:13px;font-weight:800;padding:9px 12px}.setup-detail strong{display:block;overflow-wrap:anywhere}.field{display:grid;gap:6px;font-size:13px;font-weight:800}input,textarea,select{background:#fff;border:1px solid var(--line);border-radius:8px;color:var(--ink);min-height:40px;padding:8px 10px;width:100%}textarea{line-height:1.45;resize:vertical}input:focus,textarea:focus,select:focus{border-color:var(--brand);box-shadow:0 0 0 3px #b20d1324;outline:none}.form-grid{display:grid;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid.compact{grid-template-columns:1fr 1fr}.action-row{align-items:end;background:var(--soft);border:1px solid var(--line);border-radius:8px;display:grid;gap:10px;grid-template-columns:minmax(220px,1.5fr) minmax(130px,.8fr) 140px 150px 42px;padding:10px}.icon-danger{background:#fff;border-color:#efc8cb;color:var(--danger);font-size:24px;font-weight:800;height:40px;line-height:1;padding:0}.table-panel,.task-grid,.travel-grid{display:grid;gap:14px}.task-grid{grid-template-columns:repeat(3,minmax(220px,1fr))}.travel-grid{grid-template-columns:repeat(2,minmax(280px,1fr))}.task-card,.travel-card{display:grid;gap:12px;padding:14px}.task-card.complete{background:#f2f8f4;border-color:#bdd9c8}.task-summary{align-items:center;background:#fff;display:flex;gap:12px;justify-content:space-between;text-align:left;width:100%}.task-summary>span:first-child{display:grid;gap:4px;min-width:0}.task-summary strong{overflow-wrap:anywhere}.task-summary small{color:var(--muted);font-size:13px;font-weight:800}.task-summary>span:last-child{color:var(--brand-dark);flex:0 0 auto;font-size:13px;font-weight:900}.task-link{color:var(--brand);font-weight:900;justify-self:start;text-decoration:none}.task-link:hover{text-decoration:underline}.checkbox-line{align-items:center;display:flex;gap:8px;font-weight:800}.checkbox-line input{min-height:auto;width:auto}.add-task{justify-self:start}.trip-timeline{border-top:1px solid var(--line);display:grid;gap:12px;padding-top:14px}.trip-timeline h3{color:var(--ink);font-size:18px;margin:0}.timeline-list{display:grid;gap:0}.timeline-group{display:grid}.timeline-day{background:#f3f5f8;color:var(--muted);font-size:13px;font-weight:900;padding:8px 14px}.timeline-item{display:grid;gap:12px;grid-template-columns:78px 36px minmax(0,1fr);min-height:94px;padding:16px 0;position:relative}.timeline-time{color:var(--ink);display:grid;gap:2px;justify-items:end;line-height:1.15;padding-top:4px;text-align:right}.timeline-time strong{font-size:14px}.timeline-time span{color:var(--muted);font-size:11px;font-weight:900}.timeline-marker{align-items:center;background:#1582c4;border:2px solid transparent;border-radius:999px;color:#fff;display:flex;font-size:13px;font-weight:950;height:36px;justify-content:center;position:relative;width:36px;z-index:1}.timeline-marker svg{fill:none;height:23px;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2.5;width:23px}.timeline-marker span{line-height:1}.timeline-item.flight .timeline-marker{background:var(--brand)}.timeline-item.transport .timeline-marker{background:var(--ink);border-color:var(--brand-dark);color:#fff}.timeline-item.hotel .timeline-marker{background:#fff;border-color:var(--brand);color:var(--brand)}.timeline-card{display:grid;gap:8px;min-width:0}.timeline-card-head{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.timeline-card-head strong{color:var(--ink);font-size:16px;line-height:1.3}.timeline-card-head span{background:#fde8ea;border-radius:4px;color:var(--brand-dark);font-size:12px;font-weight:900;padding:3px 7px}.timeline-card ul{color:var(--muted);display:grid;font-size:14px;font-weight:750;gap:5px;line-height:1.45;list-style:none;margin:0;padding:0}.travel-meta{color:var(--muted);display:flex;flex-wrap:wrap;font-size:13px;font-weight:800;gap:8px 14px}@media(max-width:1180px){.app-shell{grid-template-columns:1fr}.sidebar{border-bottom:1px solid var(--line);border-right:0}nav{grid-template-columns:repeat(5,minmax(0,1fr))}nav button{font-size:16px;min-height:46px;padding:10px 12px;text-align:center}.metric-grid,.dashboard-grid,.task-grid,.travel-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.editor{max-height:none}}@media(max-width:760px){.sidebar{padding:16px}.brand{align-items:center;flex-direction:row;gap:12px;min-height:104px;padding:14px}.brand-logo{height:52px;width:52px}.brand h1{font-size:20px}.brand p{font-size:16px}nav button{font-size:17px;min-height:46px;padding:10px 14px;text-align:left}.page{padding:14px}.page-header,.editor-head,.section-title{align-items:stretch;flex-direction:column}.microsoft-setup{align-items:stretch;grid-template-columns:1fr}nav,.metric-grid,.dashboard-grid,.form-grid,.form-grid.compact,.task-grid,.travel-grid{grid-template-columns:1fr}.timeline-item{grid-template-columns:58px 32px minmax(0,1fr)}.timeline-marker{height:32px;width:32px}.date-grid{grid-template-columns:1fr}.day-column{min-height:auto}.action-row{grid-template-columns:1fr}}
