:root{color-scheme:dark;font-family:Inter,Hiragino Sans,Yu Gothic UI,system-ui,sans-serif;background:#0e1116;color:#f4f7fb}*{box-sizing:border-box}body{margin:0;min-width:320px;background:linear-gradient(180deg,rgba(47,84,126,.18),transparent 320px),#0e1116}button,input,textarea{font:inherit}button{border:1px solid #3a4658;border-radius:8px;background:#161c25;color:#e9eef7;padding:8px 10px;cursor:pointer}button:hover:not(:disabled){border-color:#6aa1d8;background:#1b2634}button:disabled{cursor:not-allowed;opacity:.38}input,textarea{width:100%;border:1px solid #344154;border-radius:8px;background:#0f141c;color:#f4f7fb;padding:9px 10px}textarea{resize:vertical;line-height:1.55}.app{width:min(1180px,100%);margin:0 auto;padding:24px;display:grid;gap:18px}.app-header{display:grid;grid-template-columns:minmax(240px,1fr) minmax(320px,520px);gap:20px;align-items:end}.eyebrow{margin:0 0 6px;color:#7aa7d9;font-size:.78rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase}h1,h2{margin:0}h1{font-size:clamp(2rem,6vw,4.6rem);line-height:.98;letter-spacing:0}h2{font-size:1rem;color:#d8e2ef}.header-fields{display:grid;grid-template-columns:minmax(240px,1fr) auto;gap:10px;align-items:end}label{display:grid;gap:6px;color:#92a0b3;font-size:.86rem;font-weight:650}.view-mode-button{min-height:39px;white-space:nowrap;border-color:#6aa1d8;background:#6aa1d81f;font-weight:700}.edit-header-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.edit-header-actions button{min-height:39px;white-space:nowrap}.edit-save-status{margin:-6px 0 0;color:#8ee6a8;font-size:.9rem;font-weight:800}.edit-save-status.unsaved{color:#f2c66d}.list-app{min-height:100vh;align-content:start}.list-header{display:flex;align-items:flex-end;justify-content:space-between;gap:16px}.list-header-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}.version-link{min-height:32px;padding:4px 7px;border:none;background:transparent;color:#607086;font-family:JetBrains Mono,monospace;font-size:.88rem;font-weight:800}.version-link:hover{color:#9cc8f5;background:#6aa1d814}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:flex;align-items:center;justify-content:center;padding:16px;background:#0000009e}.modal{width:min(540px,100%);max-height:82vh;border:1px solid #2b3545;border-radius:10px;background:#151a22;box-shadow:0 24px 70px #0000008a}.modal-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;border-bottom:1px solid #263141}.modal-title{margin:0;font-size:1rem}.modal-close{width:2rem;height:2rem;padding:0;border:none;background:transparent;color:#8796aa;font-weight:800}.modal-close:hover{color:#f4f7fb;background:#ffffff0f}.modal-body{padding:16px}.rn-modal{display:flex;flex-direction:column}.rn-body{display:block;overflow-y:auto}.rn-h1{margin:0 0 14px;color:#f4f7fb;font-size:1.1rem}.rn-h2{margin:18px 0 8px;padding-bottom:6px;border-bottom:1px solid #263141;color:#9cc8f5;font-size:1rem}.rn-h2:first-child{margin-top:0}.rn-h3{margin:14px 0 6px;color:#8796aa;font-size:.82rem;letter-spacing:.08em;text-transform:uppercase}.rn-list{margin:0 0 8px 1.2rem;padding:0;display:grid;gap:5px}.rn-list li,.rn-p{color:#d7e1ee;font-size:.92rem;line-height:1.55}.rn-p{margin:4px 0 10px}.plan-list-panel{overflow:hidden}.plan-list-head{align-items:center}.plan-list-head>div:first-child{display:grid;gap:4px}.plan-list-toolbar{padding:10px 16px;border-bottom:1px solid #263141;background:#121a25}.io-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-start}.hidden-file-input{display:none}.empty-plan-list{display:grid;gap:14px;padding:20px 16px;color:#8796aa}.empty-plan-list p{margin:0}.empty-plan-list button{justify-self:start}.plan-list{list-style:none;margin:0;padding:0;display:grid}.plan-list-item{display:grid;grid-template-columns:2rem minmax(0,1fr) auto;gap:14px;align-items:center;padding:16px;border-top:1px solid #263141}.plan-select-check{display:grid;place-items:center}.plan-select-check input{width:18px;height:18px;accent-color:#6aa1d8}.plan-list-info{min-width:0;display:grid;gap:5px}.plan-list-info strong{color:#f4f7fb;font-size:1.05rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.plan-list-info span,.plan-list-info small{color:#8796aa;font-size:.86rem;line-height:1.4}.plan-list-actions{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}.view-app{min-height:100vh;align-content:start}.view-header{display:flex;align-items:flex-end;justify-content:space-between;gap:16px}.view-header h1{font-size:clamp(2.2rem,6vw,4.2rem)}.view-header-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.view-stage{width:min(820px,100%);margin:0 auto;display:grid;gap:14px}.view-controls{display:grid;grid-template-columns:3rem minmax(0,1fr) 3rem;gap:8px}.view-controls button{min-height:44px;font-size:1.1rem;font-weight:800}.view-controls select{min-width:0;border:1px solid #344154;border-radius:8px;background:#0f141c;color:#f4f7fb;padding:9px 10px;font:inherit;font-weight:700}.view-summary{display:grid;grid-template-columns:1.35fr 1fr 1fr;gap:1px;overflow:hidden;border:1px solid #2b3545;border-radius:8px;background:#2b3545}.view-summary div{display:grid;gap:7px;padding:14px 16px;background:#151b24}.view-summary div:first-child{background:linear-gradient(135deg,#122033,#172918)}.view-summary span{color:#8897ab;font-size:.8rem;font-weight:800}.view-summary strong{color:#f4f7fb;font-family:JetBrains Mono,monospace;font-size:clamp(1.1rem,4vw,1.7rem);overflow-wrap:anywhere}.view-summary div:first-child strong{color:#8ee6a8}.view-summary-arrival{align-content:start}.view-adjust-buttons{display:grid;grid-template-columns:repeat(3,minmax(0,3.2rem));gap:5px;margin-top:2px}.view-adjust-buttons button,.view-task-adjust button{min-width:0;padding:6px;border-radius:6px;border-color:#3c5067;background:#6aa1d81f;color:#dbeafe;font-family:JetBrains Mono,monospace;font-size:.78rem;font-weight:800}.view-timeline-panel{position:static;background:#12314d}.view-timeline-panel .panel-head{background:#12314d85}.view-plan-count{color:#8fb9e4;font-family:JetBrains Mono,monospace;font-size:.86rem;font-weight:700}.view-timeline{padding:18px 20px 22px}.view-timeline .timeline-point{grid-template-columns:minmax(10rem,14rem) minmax(0,1fr);min-height:64px}.view-timeline .timeline-point time{color:#dbeafe;font-size:1rem}.view-timeline .timeline-point span{font-size:1.05rem}.view-timeline .timeline-point small{color:#9cc8f5}.view-task-adjust{grid-column:2;display:grid;grid-template-columns:repeat(4,minmax(2.4rem,3rem));gap:5px;margin-top:-8px}.view-empty{width:min(620px,100%);margin:0 auto;padding:18px;display:grid;gap:14px}.summary-band{display:grid;grid-template-columns:1fr 1.4fr 1fr;gap:1px;overflow:hidden;border:1px solid #2b3545;border-radius:8px;background:#2b3545}.summary-item{min-width:0;display:grid;gap:8px;padding:16px;background:#151b24}.summary-item span{color:#8897ab;font-size:.82rem;font-weight:700}.summary-item strong{font-family:JetBrains Mono,monospace;font-size:1.45rem;line-height:1.1;overflow-wrap:anywhere}.summary-primary{background:linear-gradient(135deg,#122033,#172918)}.summary-primary strong{color:#8ee6a8;font-size:clamp(1.7rem,4vw,2.8rem)}.goal-time-input{max-width:12rem;font-family:JetBrains Mono,monospace;font-size:1.35rem;font-weight:700}.time-stepper{display:grid;gap:8px}.stepper-buttons{display:flex;gap:4px;flex-wrap:wrap}.stepper-buttons button{min-width:2.8rem;padding:6px 8px;border-radius:6px;color:#c8d4e3;font-family:JetBrains Mono,monospace;font-size:.78rem;font-weight:700}.goal-stepper-buttons{display:grid;gap:5px;justify-items:start}.goal-stepper-buttons .stepper-buttons{display:grid;grid-template-columns:repeat(3,3.2rem)}.goal-stepper-buttons button{min-width:3.1rem;border-color:#3c5067;background:#6aa1d81a}.workspace{display:grid;grid-template-columns:minmax(0,1.18fr) minmax(320px,.82fr);gap:18px;align-items:start}.panel{border:1px solid #2b3545;border-radius:8px;background:#151a22}.panel-head{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:58px;padding:14px 16px;border-bottom:1px solid #2b3545}.task-panel-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}.task-mode-tabs{display:inline-grid;grid-template-columns:repeat(3,minmax(3.3rem,1fr));gap:2px;padding:3px;border:1px solid #2b3545;border-radius:8px;background:#101720}.task-mode-tabs button{min-width:0;padding:6px 9px;border:none;border-radius:6px;background:transparent;color:#8796aa;font-size:.84rem;font-weight:800}.task-mode-tabs button.active{background:#6aa1d829;color:#dbeafe}.primary-button{border-color:#6aa1d8;background:#4780bc2e;font-weight:700}.danger-button{color:#ff9b9b;border-color:#ff74745c}.save-status{margin:0;color:#8ee6a8;font-size:.84rem;font-weight:700}.task-table{display:grid}.task-row{display:grid;grid-template-columns:4.5rem minmax(170px,1fr) minmax(150px,170px) 3.2rem;gap:10px;align-items:center;min-height:72px;padding:10px 14px;border-bottom:1px solid #263141}.task-row-normal,.task-row-adjust{grid-template-columns:4.5rem minmax(150px,1fr) minmax(6rem,10rem)}.task-row-normal{min-height:54px}.task-row-adjust{min-height:82px}.task-row-head{min-height:auto;color:#7f8da0;font-size:.78rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.task-index{color:#94a3b8;font-family:JetBrains Mono,monospace;text-align:center}.task-name-display{min-width:0;color:#f4f7fb;font-weight:800;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.task-order-cell{display:grid;grid-template-columns:2.1rem minmax(0,1fr);gap:6px;align-items:center}.drag-handle{display:inline-grid;place-items:center;width:2.1rem;height:2.45rem;padding:0;border-color:#3c5067;background:#6aa1d814;color:#8fb9e4;font-size:1.1rem;font-weight:800;line-height:1;touch-action:none;-webkit-user-select:none;user-select:none;cursor:grab}.drag-handle:active{cursor:grabbing}.task-row.dragging{position:relative;z-index:2;background:#6aa1d821;box-shadow:inset 0 0 0 1px #6aa1d899}.minutes-field{display:grid;gap:5px;color:#93a1b4}.duration-input-line{display:grid;grid-template-columns:minmax(0,1fr) 2rem;gap:6px;align-items:center}.duration-input-line input{font-family:JetBrains Mono,monospace;text-align:right}.duration-display{display:block;min-width:0;padding:2px 0;color:#f4f7fb;font-family:JetBrains Mono,monospace;font-size:1.05rem;text-align:right}.minute-stepper-buttons{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px}.minute-stepper-buttons button{min-width:0;padding:5px 4px;font-size:.72rem}.row-actions{display:flex;justify-content:flex-end}.row-actions .danger-button{min-width:3.5rem;white-space:nowrap}.bulk-box{display:grid;gap:9px;padding:14px}.bulk-box button{justify-self:start}.add-task-box{display:grid;gap:9px;padding:14px;border-bottom:1px solid #263141}.add-task-form{display:grid;grid-template-columns:minmax(180px,1fr) minmax(110px,140px) minmax(240px,310px) auto;gap:12px;align-items:start}.add-task-minutes{display:grid;grid-template-columns:minmax(0,1fr) 2rem;gap:6px;align-items:center;color:#93a1b4}.add-task-minutes input{font-family:JetBrains Mono,monospace;text-align:right}.add-task-stepper-buttons{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.add-task-stepper-buttons button{min-width:0;min-height:40px;padding:9px 8px;font-size:.78rem}.timeline-panel{position:sticky;top:16px}.timeline-heading{display:grid;gap:3px;min-width:0}.timeline-heading span{color:#7aa7d9;font-size:.74rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.timeline-heading h2{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.timeline{list-style:none;margin:0;padding:14px 16px 18px;display:grid;gap:0}.timeline-point{position:relative;display:grid;grid-template-columns:11rem 1fr;gap:12px;min-height:54px;padding:0 0 16px 22px}.timeline-point:before{content:"";position:absolute;left:3px;top:5px;width:9px;height:9px;border-radius:50%;background:#6aa1d8;box-shadow:0 0 0 4px #6aa1d824}.timeline-point:after{content:"";position:absolute;left:7px;top:19px;bottom:3px;width:1px;background:#2f3b4d}.timeline-point:last-child:after{display:none}.timeline-point time{color:#c7d2e1;font-family:JetBrains Mono,monospace;font-size:.9rem;line-height:1.45}.timeline-point span{min-width:0;color:#f2f6fb;font-weight:700}.timeline-point small{grid-column:2;color:#8796aa;font-size:.82rem}.timeline-point.departure:before{background:#8ee6a8;box-shadow:0 0 0 4px #8ee6a829}.timeline-point.arrival:before{background:#f2c66d;box-shadow:0 0 0 4px #f2c66d29}@media (max-width: 880px){.app{padding:16px}.app-header,.header-fields,.summary-band,.workspace,.view-summary{grid-template-columns:1fr}.view-header,.list-header{align-items:flex-start;flex-direction:column}.view-header-actions,.edit-header-actions,.list-header-actions,.plan-list-actions,.io-actions{justify-content:flex-start}.plan-list-toolbar{padding:10px 14px}.plan-list-item{grid-template-columns:2rem minmax(0,1fr)}.plan-list-actions{grid-column:2}.task-panel-actions{justify-content:flex-start}.timeline-panel{position:static}.view-stage{margin:0}}@media (max-width: 620px){.task-row,.task-row-head,.task-row-normal,.task-row-adjust{grid-template-columns:4.5rem minmax(0,1fr)}.task-row-head span:nth-child(3),.task-row-head span:nth-child(4){display:none}.minutes-field,.row-actions{grid-column:2}.row-actions{justify-content:flex-start}.minutes-field{max-width:18rem}.task-row-normal .minutes-field{max-width:7rem}.add-task-form{grid-template-columns:1fr}.add-task-minutes{max-width:10rem}.add-task-stepper-buttons{width:min(100%,19rem);max-width:none}.minute-stepper-buttons button{min-width:0}.timeline-point{grid-template-columns:1fr;gap:3px}.view-timeline .timeline-point{grid-template-columns:1fr}.view-task-adjust{grid-column:1;margin-top:0}.timeline-point small{grid-column:1}}
