:root{color-scheme:light;--ink: #16201b;--muted: #647066;--forest: #0e3422;--forest-2: #17432d;--forest-soft: #eaf1e6;--moss: #557e3e;--moss-dark: #2f5e37;--trail: #f0782e;--paper: #fbfaf5;--surface: rgba(255, 255, 252, .86);--surface-strong: #fffefa;--stone: #e7ebe3;--line: rgba(22, 32, 27, .13);--line-strong: rgba(22, 32, 27, .2);--danger: #c64538;--shadow: 0 18px 48px rgba(31, 43, 35, .09)}*{box-sizing:border-box}html,body,#app{max-width:100%;min-height:100%;overflow-x:hidden}body{min-width:320px;margin:0;color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.35;background:linear-gradient(#fbfaf5e0,#fbfaf5e0),repeating-radial-gradient(ellipse at 72% 8%,rgba(14,52,34,.08) 0,rgba(14,52,34,.08) 1px,transparent 2px,transparent 34px),linear-gradient(120deg,#f7f6ef,#eef2e9)}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.6}input,select,textarea{width:100%;min-height:40px;border:1px solid var(--line);border-radius:6px;color:var(--ink);background:#fffffce6;outline:none;padding:10px 12px;font-size:.9rem;font-weight:650}input:focus,select:focus,textarea:focus{border-color:#557e3eb3;box-shadow:0 0 0 3px #557e3e24}textarea{resize:vertical}label{display:grid;gap:6px;color:var(--muted);font-size:.76rem;font-weight:800}.auth-screen{display:grid;grid-template-columns:minmax(280px,.95fr) minmax(360px,520px);align-items:stretch;min-height:100vh;background:linear-gradient(#fbfaf5e6,#fbfaf5e6),linear-gradient(120deg,#f7f6ef,#edf2eb)}.auth-visual{position:relative;overflow:hidden;color:#fffff8f0;background:linear-gradient(180deg,#082418f2,#081c15c7),url(/sidebar-trail.png) center / cover no-repeat;background-image:linear-gradient(180deg,#082418f2,#081c15c7),image-set(url(/sidebar-trail.webp) type("image/webp"),url(/sidebar-trail.png) type("image/png"));padding:30px}.auth-visual:after{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,#07211614,#072116c2);content:""}.auth-visual>*{position:relative;z-index:1}.auth-visual .brand-panel{border-bottom:0}.auth-panel{align-self:center;justify-self:center;width:min(calc(100% - 32px),460px);border:1px solid var(--line);border-radius:8px;background:var(--surface-strong);box-shadow:var(--shadow);padding:26px}.loading-panel{grid-column:1 / -1;display:grid;place-items:center;gap:10px;text-align:center}.loading-panel h1,.loading-panel p{margin:0}.auth-heading{display:flex;align-items:center;gap:14px;margin-bottom:18px}.auth-heading h1,.auth-heading p{margin:0}.auth-heading h1{font-size:1.55rem;line-height:1.05}.auth-heading p{color:var(--muted);font-size:.9rem;font-weight:700}.auth-tabs{display:grid;grid-template-columns:1fr 1fr;gap:4px;border:1px solid var(--line);border-radius:8px;background:#16201b0a;margin-bottom:16px;padding:4px}.auth-tabs button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:38px;border:0;border-radius:6px;color:var(--muted);background:transparent;font-size:.86rem;font-weight:900}.auth-tabs button.active{color:var(--forest);background:var(--surface-strong);box-shadow:0 8px 18px #1f2b2314}.auth-form{display:grid;gap:14px}.form-grid.two.equal{grid-template-columns:1fr 1fr}.input-with-icon{position:relative;display:block}.input-with-icon svg{position:absolute;left:12px;top:50%;color:var(--muted);transform:translateY(-50%);pointer-events:none}.input-with-icon input{padding-left:40px}.auth-check{justify-self:start}.auth-submit{width:100%;min-height:44px}.success-banner{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid rgba(85,126,62,.28);border-radius:8px;color:var(--forest);background:#eaf1e6e6;margin-bottom:14px;padding:12px 14px;font-size:.88rem;font-weight:750}.success-banner code{border:1px solid rgba(85,126,62,.22);border-radius:6px;background:#fffffcc2;padding:2px 6px;font-weight:900}.app-shell{display:grid;grid-template-columns:360px minmax(0,1fr);min-width:0;min-height:100vh}.sidebar{position:sticky;top:0;min-width:0;min-height:100vh;overflow:hidden;color:#fffff8eb;background:linear-gradient(180deg,#082418f5,#0a271ad6 42%,#081c15fa),url(/sidebar-trail.png) center bottom / cover no-repeat;background-image:linear-gradient(180deg,#082418f5,#0a271ad6 42%,#081c15fa),image-set(url(/sidebar-trail.webp) type("image/webp"),url(/sidebar-trail.png) type("image/png"));padding:26px 18px}.sidebar:after{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;background:linear-gradient(180deg,#072116f5,#08231894 48%,#0619132e),radial-gradient(circle at 45% 22%,rgba(255,255,255,.08),transparent 26%);content:"";pointer-events:none}.sidebar>*{position:relative;z-index:1}.brand-panel{display:flex;align-items:center;gap:12px;padding-bottom:28px;border-bottom:1px solid rgba(255,255,255,.15)}.brand-mark,.metric-icon{display:inline-grid;place-items:center;flex:0 0 auto;width:46px;height:46px;border-radius:8px}.brand-mark{color:var(--surface-strong);background:#ffffff1a}.brand-panel h1,.topbar h2,.section-heading h2,.loadout-heading h2{margin:0;line-height:1.08}.brand-panel h1{font-size:1.32rem;font-weight:850}.sidebar-panel{display:grid;gap:18px;padding-top:24px}.section-heading,.loadout-heading{display:flex;align-items:center;justify-content:space-between;gap:14px}.section-heading{margin-bottom:12px}.section-heading h2,.loadout-heading h2{font-size:1.02rem;font-weight:850}.sidebar .section-heading h2{color:#fffff8cc;font-size:.78rem;letter-spacing:0;text-transform:uppercase}.button-row,.topbar-actions,.row-actions,.table-toolbar{display:flex;align-items:center;gap:8px}.icon-button,.primary-button,.ghost-button,.mini-action{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:38px;border:1px solid transparent;border-radius:6px;font-size:.88rem;font-weight:850}.icon-button{width:38px;color:var(--forest);background:var(--forest-soft)}.icon-button.light,.ghost-button.light{color:#fffff8f2;border-color:#fff3;background:#ffffff17}.mini-action{width:34px;min-height:34px;color:#fffff8e0;background:transparent}.mini-action.danger{color:#f07850d9}.primary-button{padding:0 15px;color:var(--surface-strong);background:var(--forest);box-shadow:0 10px 20px #0e342229}.primary-button.compact{min-height:34px;font-size:.82rem}.ghost-button{padding:0 13px;color:var(--forest);border-color:var(--line);background:#fffffcdb}.refresh-button{min-width:126px}.account-chip{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;min-width:230px;border:1px solid var(--line);border-radius:8px;background:#fffffcc7;padding:6px 6px 6px 12px}.account-chip span,.account-chip small{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.account-chip span{font-size:.86rem;font-weight:900}.account-chip small{color:var(--muted);font-size:.72rem;font-weight:750}.account-chip button{grid-column:2;grid-row:1 / 3}.danger{color:var(--danger)}.backpack-list{display:grid;gap:6px}.backpack-option{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:4px;min-width:0;border-left:3px solid transparent;border-radius:0 8px 8px 0;background:#ffffff08}.backpack-option.active{border-color:var(--moss);background:#ffffff1c}.backpack-select{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:12px;min-width:0;border:0;color:inherit;background:transparent;padding:13px 10px;text-align:left}.backpack-select span,.loadout-tab span{min-width:0}.backpack-select strong,.backpack-select small,.loadout-tab strong,.loadout-tab small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.backpack-select strong{font-size:.92rem;font-weight:800}.backpack-select small{color:#fffff8b8;font-size:.72rem}.trip-sidebar-panel{border-top:1px solid rgba(255,255,255,.14);margin-top:22px}.trip-list{display:grid;gap:6px}.trip-option{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:2px;min-width:0;border-left:3px solid transparent;border-radius:0 8px 8px 0;background:#ffffff08}.trip-option.active{border-color:var(--trail);background:#ffffff1f}.trip-select{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:12px;min-width:0;border:0;color:inherit;background:transparent;padding:12px 8px 12px 10px;text-align:left}.trip-select span,.trip-select strong,.trip-select small{min-width:0}.trip-select strong,.trip-select small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.trip-select strong{font-size:.9rem;font-weight:850}.trip-select small{color:#fffff8b8;font-size:.7rem;font-weight:750}.trip-select small:first-of-type{display:flex;align-items:center;gap:4px}.sidebar-empty-state{margin:0;color:#fffff8a8;font-size:.82rem;font-weight:800}.sidebar-form{border-top:1px solid rgba(255,255,255,.14);padding-top:16px}.sidebar-form input,.sidebar-form select,.sidebar-form textarea{color:var(--surface-strong);border-color:#ffffff29;background:#ffffff1a}.sidebar-form input::placeholder,.sidebar-form textarea::placeholder{color:#fffff87a}.sidebar-form label{color:#fffff8b3}.compact-form,.item-form,.form-grid{display:grid;gap:12px}.form-grid.two{grid-template-columns:1fr 96px}.form-grid.three{grid-template-columns:1.15fr .65fr .95fr}.form-grid.loadout-fields{grid-template-columns:minmax(0,1fr) 180px}.workspace{width:100%;min-width:0;max-width:1580px;padding:30px 38px 42px}.topbar{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin-bottom:20px}.topbar-title{display:flex;align-items:flex-start;min-width:0;gap:18px}.title-row{display:flex;align-items:center;gap:12px;min-width:0}.title-row h2{overflow-wrap:anywhere;font-size:clamp(1.55rem,2.3vw,2.15rem);font-weight:900}.topbar-title p{margin:7px 0 0;color:var(--muted);font-size:.95rem;font-weight:650}.topbar-trip-context{display:flex;align-items:center;flex-wrap:wrap;gap:6px;overflow-wrap:anywhere}.mobile-trip-strip{display:none}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;padding:0;margin:-1px}.mobile-trip-strip-icon,.mobile-trip-strip .icon-button{width:44px;min-height:44px}.mobile-trip-strip-icon{display:grid;place-items:center;border-radius:8px;color:var(--forest);background:var(--forest-soft)}.mobile-trip-strip-copy{display:grid;min-width:0;gap:4px}.mobile-trip-strip-copy strong{min-width:0;overflow-wrap:anywhere;font-size:1rem;line-height:1.15}.mobile-trip-strip-copy small{display:flex;align-items:center;flex-wrap:wrap;gap:5px 7px;min-width:0;color:var(--muted);font-size:.78rem;font-weight:850}.mobile-trip-strip-copy small span{min-width:0;overflow-wrap:anywhere}.active-state{display:inline-flex;align-items:center;gap:6px;color:var(--moss-dark);font-size:.72rem;font-weight:900;text-transform:uppercase}.active-state:before{width:8px;height:8px;border-radius:999px;background:var(--moss-dark);content:""}.error-banner{border:1px solid rgba(198,69,56,.24);border-radius:8px;color:#7c261f;background:#c6453814;padding:12px 14px}.trip-form-panel,.trip-overview-grid{margin-bottom:18px}.trip-main-fields{grid-template-columns:minmax(0,1fr) 180px 96px}.trip-select-fields{grid-template-columns:repeat(4,minmax(0,1fr))}.trip-threshold-fields{grid-template-columns:repeat(3,minmax(0,1fr))}.compact-heading{margin-bottom:0}.compact-select-fields{grid-template-columns:repeat(3,minmax(0,1fr))}.trip-overview-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);gap:14px}.trip-context-body,.trip-loadout-body{display:grid;gap:14px}.trip-context-title,.linked-loadout-state{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:11px;min-width:0}.trip-context-title svg,.linked-loadout-state svg,.trip-empty-panel svg{color:var(--moss-dark)}.trip-context-title h3,.trip-context-title p,.linked-loadout-state strong,.linked-loadout-state span{margin:0;min-width:0;overflow-wrap:anywhere}.trip-context-title h3{font-size:1.05rem;line-height:1.15}.trip-context-title p,.linked-loadout-state span{color:var(--muted);font-size:.84rem;font-weight:700}.linked-loadout-state strong{display:block;font-size:.95rem;font-weight:900}.trip-context-grid,.trip-threshold-summary{display:grid;gap:10px 14px;margin:0}.trip-context-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.trip-threshold-summary{grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid rgba(22,32,27,.08);padding-top:12px}.trip-context-grid div,.trip-threshold-summary div{min-width:0}.trip-context-grid dt,.trip-threshold-summary dt{display:flex;align-items:center;gap:5px;color:var(--muted);font-size:.72rem;font-weight:900;text-transform:uppercase}.trip-context-grid dd,.trip-threshold-summary dd{margin:3px 0 0;overflow-wrap:anywhere;font-size:.88rem;font-weight:850}.trip-empty-panel{display:flex;align-items:center;gap:10px;color:var(--muted);padding:10px 0;font-size:.88rem;font-weight:800}.trip-empty-panel p{margin:0}.route-analysis-panel{margin-bottom:18px}.route-analysis-heading>div{min-width:0}.route-analysis-heading p{margin:4px 0 0;color:var(--muted);font-size:.78rem;font-weight:800}.route-analysis-layout{display:grid;grid-template-columns:minmax(280px,.72fr) minmax(0,1.28fr);align-items:start;gap:14px}.gpx-dropzone{display:grid;align-content:start;gap:12px;min-height:232px;border:1px dashed var(--line-strong);border-radius:8px;background:#fffffcb8;padding:16px}.gpx-dropzone.dragging{border-color:#557e3ead;background:var(--forest-soft)}.gpx-dropzone.disabled{background:#16201b09}.gpx-dropzone-icon{display:grid;place-items:center;width:48px;height:48px;border-radius:8px;color:var(--forest);background:var(--forest-soft)}.spin-icon{animation:spin .9s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.gpx-dropzone-copy{display:grid;gap:4px;min-width:0}.gpx-dropzone-copy strong{font-size:1rem;line-height:1.15}.gpx-dropzone-copy span{color:var(--muted);overflow-wrap:anywhere;font-size:.84rem;font-weight:750}.gpx-inline-message,.route-analysis-error,.route-loading-state,.route-empty-state,.elevation-notice{display:flex;align-items:center;gap:9px;border-radius:8px;padding:11px 12px;overflow-wrap:anywhere;font-size:.84rem;font-weight:800}.gpx-inline-message{margin:0}.gpx-inline-message.error,.route-analysis-error,.elevation-notice{color:#7c261f;background:#c6453814}.gpx-inline-message.success{color:var(--moss-dark);background:var(--forest-soft)}.route-analysis-results{display:grid;gap:12px;min-width:0}.route-loading-state,.route-empty-state{min-height:96px;color:var(--muted);background:#16201b0a}.route-empty-state p,.route-loading-state p,.route-analysis-error p,.elevation-notice p{margin:0}.route-metrics-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.route-metric-chip-strip{display:none}.route-metric-details{display:contents}.route-metric-details summary{display:none}.route-metric-card{min-height:98px;padding:14px}.route-metric-card .metric-copy strong{font-size:1.18rem}.route-metric-card .metric-copy p{display:flex;align-items:center;flex-wrap:wrap;gap:5px}.estimated-label{display:inline-flex;align-items:center;min-height:20px;border-radius:999px;color:var(--moss-dark);background:var(--forest-soft);padding:0 7px;font-size:.64rem;font-weight:900;text-transform:uppercase}.elevation-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:0}.elevation-summary-grid div{min-width:0;border:1px solid rgba(85,126,62,.16);border-radius:8px;background:#eaf1e68c;padding:10px}.elevation-summary-grid dt{display:flex;align-items:center;gap:5px;color:var(--muted);font-size:.68rem;font-weight:900;text-transform:uppercase}.elevation-summary-grid dd{margin:4px 0 0;font-size:.94rem;font-weight:900}.route-warnings-preview ul{display:grid;gap:8px;margin:0;padding:0;list-style:none}.route-warnings-preview li{display:grid;grid-template-columns:auto minmax(0,1fr);gap:8px;border:1px solid rgba(240,120,46,.2);border-radius:8px;background:#f0782e1a;padding:10px}.route-warnings-preview strong,.route-warnings-preview span{display:block;min-width:0;overflow-wrap:anywhere}.route-warnings-preview span{color:var(--muted);font-size:.78rem;font-weight:750}.loadout-panel{display:grid;gap:12px;margin-bottom:18px}.loadout-heading{justify-content:flex-start}.loadout-title-row{display:flex;align-items:center;gap:10px;min-width:0}.count-badge{display:inline-flex;align-items:center;min-height:28px;border:1px solid rgba(85,126,62,.22);border-radius:999px;color:var(--moss-dark);background:var(--forest-soft);padding:0 10px;font-size:.75rem;font-weight:900;white-space:nowrap}.loadout-strip{display:flex;max-width:100%;min-width:0;overflow-x:auto;overscroll-behavior-x:contain;padding-bottom:4px}.loadout-tab{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:12px;flex:0 0 246px;min-width:246px;min-height:74px;border:1px solid var(--line);border-right:0;color:var(--ink);background:#fffffcc7;padding:14px 15px;text-align:left}.loadout-tab:first-child{border-radius:8px 0 0 8px}.loadout-tab:last-child{border-right:1px solid var(--line);border-radius:0 8px 8px 0}.loadout-tab.active{border-bottom:4px solid var(--moss-dark);background:var(--surface-strong)}.loadout-tab strong{font-size:.93rem}.loadout-tab small{color:var(--muted);font-size:.76rem}.metrics-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:18px}.panel,.metric-card{border:1px solid var(--line);border-radius:8px;background:var(--surface);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.metric-card{display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px 14px;align-items:center;min-height:114px;padding:17px}.metric-icon{color:var(--forest);background:var(--forest-soft)}.metric-icon.target{color:var(--moss-dark);background:#e9f2df}.metric-icon.check{color:#205d57;background:#e5f1ed}.metric-icon.base{color:#20372d;background:#eef1ec}.metric-copy{min-width:0}.metric-copy p,.metric-copy small{margin:0;color:var(--muted);font-size:.76rem;font-weight:800}.metric-copy strong{display:block;margin:2px 0 4px;overflow-wrap:anywhere;font-size:1.45rem;line-height:1.1}.metric-progress,.gauge-track,.bar{overflow:hidden;border-radius:999px;background:#16201b17}.metric-progress{grid-column:1 / -1;height:6px}.metric-progress span,.gauge-track span,.bar span{display:block;height:100%;background:linear-gradient(90deg,var(--moss-dark),var(--moss))}.planning-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(430px,.95fr);gap:14px;margin-bottom:18px}.panel{min-width:0;padding:18px}.delta-pill{display:inline-flex;align-items:center;min-height:30px;border-radius:999px;color:var(--forest);background:var(--forest-soft);padding:0 11px;font-size:.84rem;font-weight:900}.delta-pill.over{color:#9b3b22;background:#f0782e24}.ideal-controls{display:grid;grid-template-columns:minmax(260px,.8fr) minmax(0,1fr);gap:16px;margin-bottom:14px}input[type=range]{padding:0;accent-color:var(--moss-dark)}.ideal-gauge{display:grid;gap:8px;margin-bottom:14px}.gauge-track{height:11px}.gauge-labels{display:flex;justify-content:space-between;color:var(--muted);font-size:.78rem;font-weight:800}.ideal-summary{display:grid;grid-template-columns:auto auto auto minmax(0,1fr);align-items:center;gap:16px;border:1px solid rgba(85,126,62,.18);border-radius:8px;background:linear-gradient(90deg,#eaf1e6f2,#fffffcd1);padding:13px}.planning-grid textarea{min-height:56px}.ideal-summary small,.ideal-summary p{margin:0;color:var(--muted);font-size:.82rem;font-weight:700}.ideal-summary strong{display:block;font-size:1.75rem;line-height:1}.gear-grid{display:grid;grid-template-columns:minmax(300px,.82fr) minmax(0,1.35fr);gap:16px;margin-bottom:28px}.breakdown-list{display:grid;gap:2px}.breakdown-row{display:grid;grid-template-columns:auto minmax(110px,1fr) auto auto;align-items:center;gap:12px;border-bottom:1px solid rgba(22,32,27,.08);padding:12px 0}.breakdown-row>span,.breakdown-row>strong,.breakdown-row>small{min-width:0;overflow-wrap:anywhere}.breakdown-row>small{color:var(--muted);font-size:.78rem;font-weight:800}.breakdown-row .bar{grid-column:2 / 5;height:7px}.inventory-panel{overflow:hidden}.mobile-checklist{display:none}.item-form{grid-template-columns:minmax(150px,1.2fr) minmax(128px,.9fr) 86px 68px auto;align-items:end;border-bottom:1px solid rgba(22,32,27,.08);margin-bottom:16px;padding-bottom:16px}.check-field{display:inline-flex;align-items:center;min-height:42px;gap:7px;color:var(--ink);font-size:.82rem;font-weight:850;white-space:nowrap}.item-form .check-field{grid-row:3}.item-notes{grid-column:1 / -1;grid-row:2}.item-submit{grid-column:5;grid-row:1;align-self:end}.check-field input,td input[type=checkbox]{width:17px;height:17px;min-height:0;accent-color:var(--moss-dark)}.table-toolbar{justify-content:flex-end;margin-bottom:14px}.table-toolbar>span{color:var(--muted);font-size:.82rem;font-weight:800;white-space:nowrap}.search-box{position:relative;display:block;min-width:220px}.search-box svg{position:absolute;left:11px;top:50%;color:var(--muted);transform:translateY(-50%);pointer-events:none}.search-box input{padding-left:36px}.table-wrap{min-width:0;overflow-x:auto}table{width:100%;min-width:880px;border-collapse:collapse}th,td{border-bottom:1px solid rgba(22,32,27,.08);padding:11px 10px;text-align:left;vertical-align:middle}th{color:#3f4c44;font-size:.72rem;font-weight:900;text-transform:uppercase}td{font-size:.84rem;font-weight:650}td strong,td small{display:block}td small{color:var(--moss-dark);font-size:.72rem;font-weight:850}tr.muted{color:var(--muted);background:#16201b06}.empty-state{color:var(--muted);font-weight:850;text-align:center;padding:26px}.packing-progress{display:grid;gap:8px;border:1px solid rgba(85,126,62,.22);border-radius:8px;background:linear-gradient(90deg,#eaf1e6f2,#fffffcdb);padding:13px}.packing-progress>div:first-child{display:flex;align-items:center;justify-content:space-between;gap:12px}.packing-progress span,.packing-progress small,.mobile-result-count{color:var(--muted);font-size:.78rem;font-weight:850}.packing-progress strong{font-size:1.24rem;line-height:1}.packing-progress-track{height:9px;overflow:hidden;border-radius:999px;background:#16201b1a}.packing-progress-track span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--moss-dark),var(--moss))}.checklist-filters,.mobile-item-list{display:grid;gap:10px}.quick-filter-group{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;border:1px solid var(--line);border-radius:8px;background:#16201b0a;padding:4px}.quick-filter-group button{min-width:0;min-height:38px;border:0;border-radius:6px;color:var(--muted);background:transparent;font-size:.82rem;font-weight:900}.quick-filter-group button.active{color:var(--forest);background:var(--surface-strong);box-shadow:0 8px 18px #1f2b2314}.mobile-category-row{display:grid;grid-template-columns:minmax(0,1fr) 38px;gap:8px}.mobile-empty-state{border:1px dashed var(--line-strong);border-radius:8px;color:var(--muted);background:#fffffcb8;padding:18px;text-align:center;font-size:.88rem;font-weight:850}.mobile-checklist-error{border:1px solid rgba(198,69,56,.24);border-radius:8px;color:#7c261f;background:#c6453814;padding:11px 12px;overflow-wrap:anywhere;font-size:.84rem;font-weight:800}.mobile-item-card{display:grid;grid-template-columns:68px minmax(0,1fr);align-items:start;gap:12px;min-width:0;border:1px solid var(--line);border-radius:8px;background:var(--surface-strong);padding:12px}.mobile-item-card.packed{border-color:#557e3e47;background:#fffffceb}.packing-toggle{position:relative;display:grid;place-items:center;align-self:start;gap:5px;width:68px;min-height:68px;border:1px solid var(--line);border-radius:8px;color:var(--muted);background:#16201b0a;font-size:.72rem;font-weight:900}.packing-toggle input{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;min-height:0;opacity:0;cursor:pointer}.packing-toggle span{display:grid;place-items:center;width:28px;height:28px;border:2px solid currentColor;border-radius:999px}.packing-toggle input:checked+span{color:var(--surface-strong);border-color:var(--moss-dark);background:var(--moss-dark)}.packing-toggle:focus-within{border-color:#557e3eb3;box-shadow:0 0 0 3px #557e3e24}.mobile-item-card.packed .packing-toggle{color:var(--forest);border-color:#557e3e47;background:var(--forest-soft)}.mobile-item-main{display:grid;gap:8px;min-width:0}.mobile-item-header{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:10px;min-width:0}.mobile-item-title{display:flex;flex-wrap:wrap;align-items:center;gap:6px 8px;min-width:0}.mobile-item-title>strong{min-width:0;overflow-wrap:anywhere;font-size:.96rem;line-height:1.18}.critical-chip,.mobile-item-tags small{display:inline-flex;align-items:center;gap:4px;flex:0 0 auto;border-radius:999px;color:#9b3b22;background:#f0782e24;padding:4px 7px;font-size:.7rem;font-weight:900}.mobile-item-meta,.mobile-item-tags,.mobile-card-actions{align-items:center}.mobile-item-meta{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px 10px;color:var(--muted);font-size:.78rem;font-weight:800}.mobile-item-category,.mobile-item-quantity{grid-column:1}.mobile-item-meta span,.mobile-item-meta strong{min-width:0;overflow-wrap:anywhere}.mobile-item-meta strong{grid-column:2;grid-row:1 / span 2;align-self:center;justify-self:end;color:var(--ink);font-size:.9rem}.mobile-item-tags{display:flex;flex-wrap:wrap;gap:7px;margin-top:8px}.mobile-item-tags small{color:var(--moss-dark);background:var(--forest-soft)}.mobile-item-main p{margin:9px 0 0;color:var(--muted);overflow-wrap:anywhere;font-size:.82rem;font-weight:650}.mobile-card-actions{display:grid;grid-template-columns:repeat(2,38px);gap:8px;justify-content:flex-end}.mobile-card-actions .icon-button{width:38px;min-height:38px}@media(max-width:1240px){.app-shell{grid-template-columns:1fr}.sidebar{position:relative;min-height:auto;background-position:center 62%}.metrics-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.planning-grid,.route-analysis-layout,.trip-overview-grid,.gear-grid{grid-template-columns:1fr}.trip-context-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:860px){.auth-screen{grid-template-columns:1fr}.auth-visual{min-height:180px}.auth-panel{margin:16px 0}}@media(max-width:720px){.sidebar,.workspace{padding:16px}.brand-panel{padding-bottom:18px}.topbar,.topbar-title,.title-row,.section-heading,.loadout-heading{align-items:stretch;flex-direction:column}.topbar{gap:14px;margin-bottom:18px}.topbar-trip-context{display:none}.mobile-trip-strip{display:grid;grid-template-columns:44px minmax(0,1fr) 44px;align-items:center;gap:10px;border:1px solid rgba(85,126,62,.2);border-radius:8px;background:var(--surface-strong);margin:-4px 0 16px;padding:10px}.trip-context-panel{display:none}.topbar-actions,.button-row,.table-toolbar{flex-wrap:wrap}.metrics-grid,.route-metrics-grid,.form-grid.two,.form-grid.two.equal,.form-grid.three,.form-grid.loadout-fields,.trip-main-fields,.trip-select-fields,.trip-threshold-fields,.compact-select-fields,.trip-context-grid,.trip-threshold-summary,.elevation-summary-grid,.ideal-controls,.item-form{grid-template-columns:1fr}.route-metrics-grid,.elevation-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.route-metric-chip-strip{display:flex;flex-wrap:wrap;gap:8px}.route-metric-chip{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:7px;flex:1 1 132px;min-height:44px;border:1px solid rgba(85,126,62,.18);border-radius:8px;color:var(--ink);background:#eaf1e69e;padding:8px 10px}.route-metric-chip span,.route-metric-chip strong,.route-metric-chip small{min-width:0;overflow-wrap:anywhere}.route-metric-chip span{display:grid;gap:1px}.route-metric-chip strong{font-size:.84rem;line-height:1.05}.route-metric-chip small{color:var(--muted);font-size:.68rem;font-weight:850;text-transform:uppercase}.route-metric-details{display:block}.route-metric-details summary{display:flex;align-items:center;gap:8px;min-height:44px;border:1px solid var(--line);border-radius:8px;color:var(--moss-dark);background:var(--surface-strong);cursor:pointer;font-size:.84rem;font-weight:900;list-style:none;padding:10px 12px}.route-metric-details summary::-webkit-details-marker{display:none}.route-metric-details .route-metrics-grid{margin-top:10px}.gpx-dropzone{min-height:0}.item-form .check-field,.item-notes,.item-submit{grid-column:auto;grid-row:auto}.panel,.metric-card{background:var(--surface-strong);-webkit-backdrop-filter:none;backdrop-filter:none}.metric-card{min-height:116px}.loadout-tab{flex-basis:min(76vw,250px);min-width:0}.loadout-title-row{justify-content:space-between}.loadout-strip{display:grid;grid-template-columns:1fr;gap:8px;overflow:visible;padding-bottom:0}.loadout-tab,.loadout-tab:first-child,.loadout-tab:last-child{width:100%;min-height:64px;border:1px solid var(--line);border-radius:8px}.loadout-tab.active{border-bottom:1px solid var(--line);box-shadow:inset 4px 0 0 var(--moss-dark)}.ideal-summary{grid-template-columns:auto minmax(0,1fr)}.ideal-summary p{grid-column:1 / -1}.search-box,.table-toolbar select{min-width:100%}.desktop-inventory{display:none}.mobile-checklist{display:grid;gap:14px}.mobile-search{min-width:0}.account-chip{min-width:100%}.success-banner{align-items:stretch;flex-direction:column}}@media(max-width:420px){.route-metrics-grid,.elevation-summary-grid{grid-template-columns:1fr}.mobile-item-card{grid-template-columns:58px minmax(0,1fr);gap:10px;padding:10px}.packing-toggle{width:58px;min-height:64px}.mobile-item-header,.mobile-item-meta{grid-template-columns:1fr}.mobile-card-actions{grid-template-columns:repeat(2,38px);justify-content:start}.mobile-item-meta strong{grid-column:auto;grid-row:auto;justify-self:start}}.sidebar .loadout-panel{border-top:1px solid rgba(255,255,255,.14);margin-top:22px;margin-bottom:0;padding-top:18px}.sidebar-loadout-form{border-top:1px solid rgba(255,255,255,.14);margin-top:16px;padding-top:16px}.sidebar .loadout-heading{align-items:center;justify-content:space-between;margin-bottom:12px}.sidebar .loadout-title-row{justify-content:space-between}.sidebar .loadout-strip{display:grid;grid-template-columns:1fr;gap:6px;overflow:visible;padding-bottom:0}.loadout-option{display:grid;grid-template-columns:minmax(0,1fr) auto auto auto;align-items:center;gap:4px;min-width:0;border-left:3px solid transparent;border-radius:0 8px 8px 0;background:#ffffff08}.loadout-option.active{border-color:var(--moss);background:#ffffff1c}.loadout-select{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:12px;min-width:0;border:0;color:inherit;background:transparent;padding:13px 10px;text-align:left}.loadout-select span,.loadout-select strong,.loadout-select small{min-width:0}.loadout-select strong,.loadout-select small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.loadout-select strong{font-size:.9rem;font-weight:850}.loadout-select small,.sidebar .count-badge{color:#fffff8b8}.sidebar .count-badge{min-height:24px;border-color:#ffffff29;background:#ffffff14;padding:0 8px;font-size:.68rem}.sidebar-loadout-form .compact-heading{margin-bottom:0}.sidebar-loadout-form .form-grid.loadout-fields{grid-template-columns:minmax(0,1fr) 74px}.planning-grid.single{grid-template-columns:1fr}@media(max-width:720px){.sidebar .section-heading,.sidebar .loadout-heading{flex-direction:row;align-items:center;justify-content:space-between;gap:12px}.sidebar .section-heading>.icon-button,.sidebar .loadout-heading>.icon-button{flex:0 0 38px;width:38px;align-self:center}.sidebar .loadout-title-row{width:auto;min-width:0;justify-content:flex-start}}
