:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--ink:#142c26;--green:#184638;--muted:#546760;--line:#d7ded5;--paper:#f7f8f2;--lime:#c8f478;--mono:"Cascadia Code", Consolas, monospace;color:var(--ink);background:var(--paper);font-synthesis:none;font-family:Inter,Apple SD Gothic Neo,Malgun Gothic,system-ui,sans-serif}*{box-sizing:border-box}body{word-break:keep-all;overflow-wrap:anywhere;-webkit-font-smoothing:antialiased;margin:0;line-height:1.55}button,input,select{font:inherit;color:inherit}button,a{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:wait;opacity:.65}a{color:inherit}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline-offset:3px;outline:3px solid #4b8828}.app-shell{flex-direction:column;min-height:100svh;display:flex}.topbar{border-bottom:1px solid var(--line)}.bar-inner,.landing,.workspace{width:min(1180px,100% - 96px);margin:0 auto}.bar-inner{align-items:center;gap:42px;height:84px;display:flex}.brand,.domain,.brand-mark,.google-button,.primary-btn,.plain-btn,.danger-btn,.icon-btn,.visit-btn,.logout,nav button{justify-content:center;align-items:center;gap:9px;display:inline-flex}.brand{letter-spacing:-1.8px;white-space:nowrap;font-size:23px;font-weight:850;text-decoration:none}.brand-mark{background:var(--green);width:38px;height:38px;color:var(--lime);border-radius:11px}.domain{font:13px var(--mono);letter-spacing:-.3px;color:var(--muted);margin-left:auto}.domain i,.state:before{background:#629652;border-radius:50%;width:7px;height:7px}.landing{flex:1;align-content:center;padding:60px 0 78px;display:grid}.intro{grid-template-columns:.88fr 1.12fr;align-items:center;gap:clamp(32px,5vw,80px);display:grid}.intro-text{padding:22px 0 28px}h1,h2,h3,p{margin:0}.intro h1{letter-spacing:-.085em;font-size:clamp(52px,5.4vw,84px);font-weight:850;line-height:1.16}.intro h1 em{color:#377948;font-style:normal}.intro-text>p{color:var(--muted);letter-spacing:-.055em;margin:24px 0 35px;font-size:clamp(16px,1.35vw,20px);line-height:1.75}.google-button{background:#fff;border:1px solid #bed0c1;border-radius:9px;gap:12px;padding:14px 18px;font-size:15px;font-weight:700;text-decoration:none;box-shadow:0 3px #dee5db}.google-button:hover{border-color:var(--green)}.google-button svg:last-child{margin-left:18px}.login-note{color:var(--muted);margin-top:14px;font-size:12px;display:block}.route-art{aspect-ratio:1.3;background:#183f35;border:1px solid #203f32;border-radius:22px;position:relative;overflow:hidden;box-shadow:inset 0 0 70px #153a31}.art-grid{color:#d6e4ca;background-image:radial-gradient(#72978380 .85px,#0000 1px);background-size:17px 17px;position:absolute;inset:0}.position{color:#9eb29b;font:20px/1 var(--mono);opacity:.8;position:absolute}.tl{top:4%;left:4%}.tr{top:4%;right:4%}.bl{bottom:4%;left:4%}.br{bottom:4%;right:4%}.art-sheet{border:1.5px solid #102e26;position:absolute}.sheet-from{background:#f5f5e9;border-radius:8px;width:61%;padding:0 4.3% 4%;top:16%;left:10%;transform:rotate(-6deg);box-shadow:4px 7px #112f26}.window-bar{border-bottom:1px solid #cbd3c6;align-items:center;gap:4px;height:clamp(20px,2.4vw,32px);display:flex}.window-bar i{background:#a6b4a3;border-radius:50%;width:5px;height:5px}.from-line{color:#496552;font:clamp(9px, 1.13vw, 15px) var(--mono);white-space:nowrap;align-items:center;gap:8px;margin:8% 0 1%;display:flex}.from-line svg{flex:none}.art-route{color:#bdd6b0;position:absolute;top:45%;left:20%;transform:rotate(7deg)}.sheet-to{background:var(--lime);color:#193e2c;border-radius:10px;width:58%;padding:5% 5% 3%;top:44%;left:32%;transform:rotate(5deg);box-shadow:5px 7px #102d25}.ticket-label,.ticket-foot{align-items:center;gap:7px;display:flex}.ticket-label{font-size:clamp(9px,1vw,13px);font-weight:700}.ticket-url{letter-spacing:-.08em;white-space:nowrap;margin:5% 0;font-size:clamp(21px,2.8vw,40px);font-weight:850;line-height:1.5}.ticket-url span{letter-spacing:-.07em;font-family:Inter,Arial,sans-serif}.ticket-rule{border-top:1px dashed #59784a;margin:4% 0 6%}.ticket-foot{font:clamp(9px, .9vw, 13px) var(--mono);justify-content:space-between}.ticket-foot svg{border:1px solid #6e8c51;border-radius:50%;padding:3px}.art-pointer{color:#102f25;filter:drop-shadow(2px 2px #102f25);position:absolute;bottom:9%;right:9%;transform:rotate(6deg)}.art-pointer svg{fill:#f0f4dc}.workspace{flex:1;padding:48px 0 56px}.bar-inner nav{gap:6px;display:flex}nav button,.logout,.visit-btn,.icon-btn,.text-danger{background:0 0;border:0}nav button,.logout{color:var(--muted);border-radius:8px;padding:9px 13px;font-size:14px;font-weight:650}nav button[aria-current],nav button:hover{color:var(--green);background:#e3eddc}.logout{margin-left:auto}.section-heading,.panel-heading,.dialog-head,.dialog-actions,.link-list li,.notice,.switch-row{align-items:center;display:flex}.section-heading,.panel-heading,.dialog-head{justify-content:space-between;gap:16px}.section-heading h1{letter-spacing:-.08em;font-size:clamp(32px,3.4vw,49px);line-height:1.25}.section-heading p,.panel-heading p,.empty p{color:var(--muted);margin-top:6px;font-size:14px}.primary-btn,.plain-btn,.danger-btn{white-space:nowrap;border:1px solid #0000;border-radius:8px;padding:10px 16px;font-size:14px;font-weight:700}.primary-btn{background:var(--green);color:#fff}.primary-btn:hover{background:#286349}.plain-btn{border-color:var(--line);background:#fff}.danger-btn{color:#fff;background:#a32930}.metrics{background:var(--green);color:#f7faed;border-radius:14px;grid-template-columns:repeat(3,1fr);margin:28px 0;display:grid;overflow:hidden}.metrics>div{padding:21px 26px;position:relative}.metrics>div+div:before{content:"";background:#557367;width:1px;height:50%;position:absolute;top:25%;left:0}.metrics span{color:#d7e6cf;align-items:center;gap:7px;font-size:13px;display:flex}.metrics span svg{width:16px;color:var(--lime)}.metrics strong{letter-spacing:-1px;font-variant-numeric:tabular-nums;font-size:30px;line-height:1.5}.panel{border:1px solid var(--line);background:#fff;border-radius:14px;overflow:hidden}.panel-heading{border-bottom:1px solid var(--line);padding:20px 24px}h2{letter-spacing:-.065em;font-size:20px}h2 small{font:13px var(--mono);color:var(--muted);margin-left:5px}.search-field,.alias-field{border:1px solid var(--line);background:#fff;border-radius:8px;align-items:center;display:flex}.search-field{color:var(--muted);gap:8px;padding:8px 10px}.search-field input{background:0 0;border:0;outline:0;width:160px;font-size:13px}.search-field:focus-within,.alias-field:focus-within{outline:2px solid #4b8828}.link-list{margin:0;padding:0;list-style:none}.link-list li{border-bottom:1px solid #e7ebe4;gap:15px;min-width:0;padding:16px 24px}.link-list li:last-child{border:0}.item-icon,.empty-icon{color:#447652;background:#eff5e8;border-radius:10px;flex:none;place-items:center;display:grid}.item-icon{width:37px;height:37px}.link-info{flex:1;min-width:0}.link-info a{text-overflow:ellipsis;white-space:nowrap;letter-spacing:-.035em;font-weight:750;text-decoration:none;display:block;overflow:hidden}.link-info a:hover{text-decoration:underline}.link-info a svg{margin-left:4px}.link-info a.target{color:var(--muted);font:12px/1.7 var(--mono);letter-spacing:0}.state{color:#387340;white-space:nowrap;align-items:center;gap:5px;font-size:12px;display:inline-flex}.state:before{content:"";width:6px;height:6px}.state.off{color:#725d55}.state.off:before{background:#a59791}.icon-btn,.visit-btn{min-width:32px;min-height:32px;color:var(--muted);border-radius:7px}.icon-btn:hover,.visit-btn:hover,.logout:hover{background:#edf2e9}.visit-btn{padding:0 8px;font-size:13px}.link-actions{gap:4px;display:flex}.empty{text-align:center;padding:48px 16px 56px}.empty-icon{border-radius:16px;width:54px;height:54px;margin:0 auto 14px}.empty h3{letter-spacing:-.04em;font-size:18px}.notice,.error{border-radius:8px;margin:12px 0;padding:10px 14px;font-size:14px}.notice{background:#e9f4dd;gap:8px}.notice button{margin-left:auto}.error{color:#943122;background:#fff0eb}.top-error,.loading{width:min(1100px,100% - 48px);margin:20px auto}.loading{flex:1}dialog{border:1px solid var(--line);color:var(--ink);background:#fbfcf7;border-radius:16px;width:min(450px,100% - 32px);padding:25px;box-shadow:0 22px 80px #102d2540}dialog::backdrop{background:#0f2c2378}.dialog-head{margin-bottom:22px}.field,.filter-label{gap:7px;font-size:14px;font-weight:700;display:grid}.field+.field,.field-note+.field{margin-top:18px}.field>input,.alias-field input,select{border:1px solid var(--line);background:#fff;border-radius:8px;width:100%;min-width:0;padding:11px;font-size:15px}.alias-field input{border:none;outline:0;flex:1}.alias-field span{color:#5c705f;font:14px var(--mono);padding-right:12px}.field-note{color:var(--muted);margin-top:6px;font-size:12px}.switch-row{gap:6px;margin:18px 0;font-size:14px}input[type=checkbox]{width:17px;height:17px;accent-color:var(--green)}.dialog-actions{justify-content:flex-end;gap:8px;margin-top:24px}.text-danger{color:#a32930;margin-right:auto;padding:8px}.delete-message{line-height:1.8}.filter-label{color:var(--muted);font-size:12px}select{max-width:320px}.segmented{background:#f0f4ec;border-radius:9px;padding:3px;display:flex}.segmented button{background:0 0;border:0;border-radius:7px;padding:6px 14px;font-size:13px}.segmented button[aria-pressed=true]{color:#fff;background:var(--green)}.stats-panel>p{margin:20px}.plot{background:repeating-linear-gradient(0deg,#0000 0 calc(25% - 1px),#e7ece4 calc(25% - 1px) 25%);border-bottom:1px solid #bbccbd;align-items:flex-end;gap:clamp(2px,.6vw,9px);height:180px;margin:28px 28px 0;display:flex}.column{flex:1;justify-content:center;align-items:flex-end;height:100%;display:flex}.bar{background:#78a96b;border-radius:5px 5px 0 0;width:70%;min-width:2px;max-width:47px}.column:last-child .bar{background:var(--green)}.bar.zero{background:#dbe5d9;min-height:2px}.plot-range{font:11px var(--mono);color:var(--muted);justify-content:space-between;margin:8px 28px 24px;display:flex}.day-details{border-top:1px solid var(--line);padding:12px 24px;font-size:14px}summary{cursor:pointer}table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%;margin-top:12px}td,th{text-align:left;border-top:1px solid var(--line);padding:7px 0}td:last-child,th:last-child{text-align:right}@media (width<=830px){.bar-inner,.landing,.workspace{width:calc(100% - 48px)}.bar-inner{gap:22px;height:70px}.intro{gap:26px}.sheet-to{width:61%;left:30%}.intro h1{font-size:clamp(44px,6.3vw,60px)}.intro-text>p{font-size:16px}.link-list li{gap:9px}}@media (width<=650px){.bar-inner,.landing,.workspace{width:calc(100% - 36px)}.bar-inner{gap:10px;height:65px}.brand{font-size:20px}.brand-mark{width:32px;height:32px}.domain{font-size:11px}.landing{padding:24px 0 32px}.intro{grid-template-columns:1fr;gap:22px}.intro-text{padding:16px 3px 0}.intro h1{font-size:clamp(45px,11vw,62px)}.intro-text>p{margin:14px 0 19px}.login-note{margin-top:9px}.route-art{aspect-ratio:1.67;justify-self:center;width:100%;max-width:470px}.art-grid{background-size:13px 13px}.from-line{font-size:clamp(10px,2.5vw,14px)}.ticket-url{font-size:clamp(24px,6.1vw,34px)}.ticket-label{font-size:10px}.ticket-foot{font-size:9px}.sheet-to{width:54%;padding:3.5% 4% 2%;top:39%;left:35%}.sheet-from{width:57%;padding-bottom:3%;top:14%}.art-route{top:43%}.workspace{padding:29px 0}.signed-in .bar-inner{flex-wrap:wrap;gap:8px;height:auto;padding-top:12px}.signed-in nav{order:3;width:100%;margin:4px 0 8px}.metrics{grid-template-columns:repeat(3,minmax(0,1fr));margin:20px 0}.metrics>div{padding:13px}.metrics strong{font-size:24px}.metrics span{gap:4px;font-size:11px}.metrics span svg{width:13px}.section-heading{flex-wrap:wrap;align-items:flex-start}.section-heading p{font-size:13px}.panel-heading{flex-wrap:wrap;padding:15px}.search-field input{width:125px}.link-list li{grid-template-columns:1fr auto auto;padding:12px 15px;display:grid}.item-icon{display:none}.link-info{grid-column:1/3}.link-actions{grid-area:1/3/3}.visit-btn,.state{justify-self:start}.visit-btn{min-height:25px}.visit-btn svg{width:13px}.filter-label{max-width:100%}.plot{height:150px;margin:22px 16px 0}.plot-range{margin:8px 16px 21px}.empty{padding:35px 12px}.brand-mark svg{width:21px}.app-footer{padding-top:16px}}.app-footer{text-align:center;padding:24px 16px 20px}.copyright{white-space:nowrap;color:#fffffff2;-webkit-user-select:none;user-select:none;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#00000073;border-radius:999px;padding:4px 12px;font-size:12px;font-weight:500;display:inline-block}.copyright__mail{vertical-align:-2px;fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:14px;height:14px;margin-right:3px;display:inline-block}@media (width<=420px){.copyright{white-space:normal}}
