@import"https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Noto+Sans+SC:wght@400;500;600;700;800&display=swap";.provider-row{display:flex;align-items:center;gap:10px;border-bottom:1px solid #163229;padding:13px 0}.provider-row>div{flex:1}.provider-row b,.provider-row small,.provider-error small{display:block}.provider-row small,.provider-error small{font-size:11px;color:#71877d;margin-top:3px}.provider-panel{grid-column:1/-1}.provider-error{padding:15px;border:1px solid #704336;background:#2b1915;border-radius:9px;color:#edb28f}.provider-management{display:flex;flex-direction:column;gap:12px}.management-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.management-form{display:flex;flex-direction:column;gap:9px;background:#0a1a16;border:1px solid #193a30;border-radius:12px;padding:15px}.management-form h3,.management-heading{font-size:14px;margin:0 0 4px}.management-form label{display:flex;flex-direction:column;gap:4px;color:#94a9a0;font-size:11px}.management-form input,.management-form select{background:#081714;border:1px solid #2a4b40;color:#dcebe1;border-radius:7px;padding:8px 9px;outline:none;font-size:12px}.management-form small{color:#6e877c;font-size:10px}.management-form .primary{align-self:flex-start}.form-split{display:grid;grid-template-columns:1fr 1fr;gap:8px}.form-error{color:#edb28f;font-size:11px;margin:0}.management-heading{margin-top:12px}.management-row{display:flex;align-items:center;gap:12px;padding:10px 0;border-top:1px solid #163229}.management-row>div{flex:1}.management-row b,.management-row small{display:block}.management-row small{color:#71877d;font-size:11px;margin-top:3px}.status-toggle{background:#17382e;color:#b9f66b;border:1px solid #2c5948;border-radius:7px;padding:6px 9px;font-size:11px}:root{font-family:DM Sans,Noto Sans SC,sans-serif;color:#e8f1ee;background:#071311;font-synthesis:none}*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at 15% -10%,#163b33 0,#071311 42%),#071311;min-height:100vh}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button{cursor:pointer;border:0}.app-shell{min-height:100vh;display:flex;flex-direction:column}header{height:76px;border-bottom:1px solid #1b3731;background:#081714d9;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);display:flex;align-items:center;padding:0 6vw;gap:56px;position:sticky;top:0;z-index:10}.brand{display:flex;align-items:center;gap:11px}.brand-mark{width:34px;height:34px;border-radius:10px;background:#b9f66b;color:#0b1b14;display:grid;place-items:center;font-weight:800;font-size:20px}.brand strong{display:block;font-size:18px;letter-spacing:.06em}.brand small{display:block;color:#8ea39b;font-size:10px;letter-spacing:.12em;margin-top:1px}nav{display:flex;gap:8px;height:100%;align-items:center}nav a{display:flex;align-items:center;gap:7px;color:#8ea39b;padding:9px 13px;border-radius:8px;font-size:13px}nav a.active,nav a:hover{background:#14342b;color:#e8f1ee}main{width:min(1180px,88vw);margin:0 auto;flex:1}.home{padding:84px 0 64px}.hero{max-width:720px}.eyebrow{display:inline-flex;align-items:center;gap:6px;color:#9bdc62;font-size:11px;letter-spacing:.14em;text-transform:uppercase}.hero h1{font-size:clamp(40px,6vw,72px);line-height:1.08;letter-spacing:-.04em;margin:19px 0 16px}.hero h1 em{font-style:normal;color:#b9f66b}.hero p{color:#9aaca5;font-size:16px;line-height:1.8;max-width:590px}.search-box{margin-top:31px;background:#102b24;border:1px solid #2d5144;height:58px;border-radius:14px;display:flex;align-items:center;padding:0 17px;gap:12px;box-shadow:0 12px 40px #020b0980}.search-box svg{color:#9bdc62}.search-box input{background:none;border:0;outline:none;color:#eff9f2;flex:1;font-size:15px}.search-box input::placeholder{color:#728980}.search-box button{background:#24483b;color:#b9f66b;width:36px;height:36px;border-radius:9px;display:grid;place-items:center}.quick-rules{display:flex;gap:9px;margin-top:14px}.quick-rules button{background:transparent;color:#93a79f;border:1px solid #26473d;border-radius:99px;padding:8px 14px;font-size:12px}.quick-rules button.selected,.quick-rules button:hover{background:#b9f66b;color:#0b1b14;border-color:#b9f66b;font-weight:600}.section-head{display:flex;align-items:end;justify-content:space-between;margin:92px 0 20px}.section-head h2,.panel h2{font-size:23px;margin:7px 0 0;letter-spacing:-.02em}.updated,.muted,.hint{color:#758a81;font-size:12px}.parking-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.parking-card,.panel{background:#0d211c;border:1px solid #1d3a31;border-radius:16px;padding:20px;box-shadow:0 8px 30px #01090750}.card-top{display:flex;justify-content:space-between;align-items:start}.card-top h3{font-size:16px;margin:11px 0 0}.tag{display:inline-block;padding:4px 8px;border-radius:5px;background:#23382f;color:#e8c37a;font-size:11px}.tag.free{background:#183d2c;color:#b9f66b}.distance{color:#9bdc62;font-size:12px}.muted{display:flex;align-items:center;gap:6px;margin:14px 0}.spaces{display:flex;gap:18px;border-top:1px solid #19372e;border-bottom:1px solid #19372e;padding:14px 0}.spaces>div{display:flex;flex-direction:column;gap:4px;position:relative}.spaces b{font-size:26px;color:#e9f6e8;line-height:1}.spaces b.cyan{color:#70d8ca}.spaces span{font-size:11px;color:#789087}.spaces svg{position:absolute;right:-23px;top:2px;color:#70d8ca}.card-bottom{display:flex;align-items:center;justify-content:space-between;margin-top:15px}.fee{font-size:11px;color:#91a49c;max-width:160px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.nav-btn,.primary{display:inline-flex;align-items:center;gap:6px;background:#b9f66b;color:#0b1b14;border-radius:8px;padding:8px 12px;font-size:12px;font-weight:600}.empty{padding:48px;text-align:center;color:#738981;background:#0d211c;border:1px dashed #28463c;border-radius:14px}.subscription-cta{margin-top:72px;background:linear-gradient(100deg,#173c31,#10251f);border:1px solid #315748;border-radius:18px;padding:27px 30px;display:flex;align-items:center;justify-content:space-between}.subscription-cta h3{margin:8px 0 5px;font-size:20px}.subscription-cta p{margin:0;color:#9aaca5;font-size:13px}.subscription-cta a{color:#b9f66b;font-weight:600;font-size:13px}.admin{padding:58px 0}.page-title{display:flex;justify-content:space-between;align-items:start}.page-title h1{font-size:38px;margin:12px 0 7px;letter-spacing:-.04em}.page-title p{color:#91a49c;margin:0}.live{font-size:12px;color:#b9f66b;background:#183d2c;border-radius:99px;padding:7px 11px;display:flex;align-items:center;gap:6px}.live i,.device-dot{width:7px;height:7px;border-radius:50%;background:#b9f66b;display:inline-block}.kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:42px 0 22px}.kpis>div{background:#0d211c;border:1px solid #1d3a31;border-radius:14px;padding:18px}.kpis span,.kpis small{display:block;color:#849990;font-size:12px}.kpis strong{font-size:34px;margin:8px 4px 0 0;display:inline-block}.admin-grid{display:grid;grid-template-columns:1.6fr 1fr;gap:15px}.panel-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}.panel-head h2{margin:0}.panel-head span,.panel-head a{font-size:12px;color:#9bdc62}table{width:100%;border-collapse:collapse;font-size:12px}th{text-align:left;color:#71877d;font-weight:500;border-bottom:1px solid #1d3a31;padding:9px 7px}td{padding:13px 7px;border-bottom:1px solid #163229;color:#b9c8c1}td b{color:#eaf9e8}.device-row{display:flex;align-items:center;gap:10px;border-bottom:1px solid #163229;padding:13px 0}.device-row>div{flex:1}.device-row b,.device-row small{display:block}.device-row small{font-size:11px;color:#71877d;margin-top:3px}.status{font-size:11px;color:#c49b66}.status.online{color:#9bdc62}.led-panel{margin-top:32px}.form-row{display:flex;gap:10px;margin-top:20px}.form-row select,.form-row input{background:#081714;border:1px solid #2a4b40;color:#dcebe1;border-radius:8px;padding:11px 12px;outline:none}.form-row select{width:230px}.form-row input{flex:1}.hint{margin:13px 0 0}code{color:#aee983;background:#102a22;padding:2px 4px;border-radius:4px;font-size:11px}footer{padding:28px 6vw;color:#526b61;font-size:11px;border-top:1px solid #173129;margin-top:30px}@media(max-width:800px){header{padding:0 4vw;gap:15px}nav a{font-size:0;padding:8px}nav a svg{width:18px;height:18px}main{width:92vw}.parking-grid{grid-template-columns:1fr}.kpis{grid-template-columns:repeat(2,1fr)}.admin-grid{grid-template-columns:1fr}.form-row{flex-wrap:wrap}.form-row select,.form-row input{width:100%}.subscription-cta{align-items:start;gap:20px;flex-direction:column}}.card-tags{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.tag.freshness{background:#143b33;color:#9bdc62}.tag.freshness.stale{background:#3a2415;color:#ffcb85}.tag.freshness.unavailable{background:#2b2020;color:#f0a6a6}.meta-row,.m-meta,.m-detail-meta{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px;color:#758a81;font-size:11px;line-height:1.5}.freshness-note,.m-freshness-note{margin-top:10px;padding:9px 10px;border-radius:10px;background:#10261f;color:#a7b8b1;font-size:11px;line-height:1.5}.m-freshness{display:inline-flex;align-items:center;gap:5px;margin-left:8px;padding:3px 8px;border-radius:99px;background:#edf6f1;color:#4d806b;font-size:10px;vertical-align:middle}.m-freshness.stale{background:#fff4e6;color:#9d5f1a}.m-freshness.unavailable{background:#f5eceb;color:#a14c4c}.m-destination-search{margin-top:10px}.admin-summary{display:flex;gap:12px;flex-wrap:wrap;margin-top:12px;color:#758a81;font-size:12px}.m-detail-meta{flex-direction:column;gap:6px;margin-top:12px}.provider-sync-history{display:flex;flex-direction:column;gap:12px;margin-top:10px}.sync-filter-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.sync-filter-row select{background:#081714;border:1px solid #2a4b40;color:#dcebe1;border-radius:7px;padding:8px 9px;outline:none;font-size:12px}.sync-table-wrap{overflow:auto;border:1px solid #163229;border-radius:12px}.sync-history-table{width:100%;border-collapse:collapse;min-width:980px}.sync-history-table th,.sync-history-table td{padding:10px 12px;border-bottom:1px solid #163229;vertical-align:top;font-size:12px}.sync-history-table th{color:#93a79f;text-align:left;background:#0a1a16;position:sticky;top:0}.sync-history-table td b,.sync-history-table td small{display:block}.sync-history-table td small{color:#71877d;margin-top:3px}.sync-history-table .status{display:inline-flex}.sync-date-filter{display:flex;flex-direction:column;gap:3px;color:#71877d;font-size:10px}.sync-date-filter input{background:#081714;border:1px solid #2a4b40;color:#dcebe1;border-radius:7px;padding:8px 9px;outline:none;font-size:12px}.login-page{min-height:72vh;display:grid;place-items:center}.login-card{width:min(420px,92vw);padding:30px}.login-card h1{margin:12px 0 6px}.login-card>p{color:#849990;font-size:13px;margin-bottom:24px}.login-card label{display:flex;flex-direction:column;gap:7px;color:#9cafa7;font-size:12px;margin:14px 0}.login-card input{background:#081714;border:1px solid #2a4b40;color:#e8f1ee;border-radius:8px;padding:11px}.login-card .primary{width:100%;justify-content:center;margin-top:10px}.form-error{color:#f09a86;font-size:12px;display:block;margin:8px 0}.mobile-app{--m-green:#0c5b45;--m-lime:#c9f75d;--m-ink:#13231d;--m-muted:#6f7f78;--m-line:#e6ece8;width:100%;max-width:480px;min-height:100dvh;margin:0 auto;background:#f7faf8;color:var(--m-ink);position:relative;box-shadow:0 0 60px #0006}.mobile-header{height:58px!important;padding:0 18px!important;position:sticky!important;top:0!important;background:#f7faf8ef!important;border-bottom:1px solid var(--m-line)!important;display:flex!important;align-items:center!important;justify-content:space-between!important;-webkit-backdrop-filter:blur(14px)!important;backdrop-filter:blur(14px)!important;z-index:20!important}.mobile-brand{display:flex;align-items:center;gap:8px;color:var(--m-ink)}.mobile-brand>span{width:27px;height:27px;border-radius:8px;background:var(--m-green);color:#fff;display:grid;place-items:center;font-size:14px;font-weight:800}.mobile-brand b{font-size:15px}.mobile-location{display:flex;align-items:center;gap:5px;color:var(--m-muted);font-size:12px}.mobile-main{width:100%!important;margin:0!important;padding:0 0 calc(72px + env(safe-area-inset-bottom))!important}.mobile-tabbar{height:calc(58px + env(safe-area-inset-bottom));padding:5px 32px env(safe-area-inset-bottom);position:fixed;z-index:30;bottom:0;left:50%;transform:translate(-50%);width:100%;max-width:480px;background:#fff;border-top:1px solid var(--m-line);display:flex;justify-content:space-between;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.mobile-tabbar a{min-width:64px;height:48px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;color:#819087;font-size:10px}.mobile-tabbar a.active{color:var(--m-green);font-weight:700}.m-home{padding-bottom:20px}.m-hero{background:radial-gradient(circle at 90% 10%,#247b60,#0b4b39 58%);padding:31px 20px 25px;color:#fff}.m-hero>span,.m-form-page>div>span,.m-records>div>span{font-size:11px;letter-spacing:.12em;color:#d2fb83}.m-hero h1{font-size:31px;line-height:1.18;letter-spacing:-.04em;margin:10px 0 12px}.m-hero p{font-size:13px;line-height:1.6;color:#c4dbd3;margin:0}.m-locate{margin-top:20px;display:flex;align-items:center;gap:7px;border-radius:99px;background:#ffffff18;color:#effff7;border:1px solid #ffffff25;padding:9px 12px;font-size:11px}.m-search{margin:-1px 16px 0;height:49px;background:#fff;border:1px solid var(--m-line);border-radius:13px;box-shadow:0 10px 28px #154c3620;display:flex;align-items:center;gap:9px;padding:0 13px;transform:translateY(-14px)}.m-search>svg{color:var(--m-green)}.m-search input{flex:1;border:0;outline:0;background:transparent;color:var(--m-ink);font-size:14px}.m-search button{width:32px;height:32px;border-radius:9px;background:#edf6f1;color:var(--m-green);display:grid;place-items:center}.m-rule-scroll{display:flex;gap:8px;padding:0 16px 4px;overflow-x:auto;scrollbar-width:none}.m-rule-scroll::-webkit-scrollbar{display:none}.m-rule-scroll button{flex:none;border:1px solid #dbe6e0;background:#fff;color:#617068;border-radius:99px;padding:8px 13px;font-size:12px}.m-rule-scroll button.active{background:var(--m-green);border-color:var(--m-green);color:#fff}.m-section-title{display:flex;align-items:center;justify-content:space-between;padding:25px 18px 12px}.m-section-title span{font-size:10px;letter-spacing:.13em;color:#6ca58e}.m-section-title h2{font-size:21px;margin:4px 0 0}.m-section-title>svg{color:#7d8f86}.m-list{display:flex;flex-direction:column;gap:11px;padding:0 14px}.m-parking-card{display:block;background:#fff;border:1px solid var(--m-line);border-radius:16px;padding:16px;color:var(--m-ink);box-shadow:0 4px 18px #1744320a}.m-card-title{display:flex;justify-content:space-between;align-items:flex-start}.m-card-title>div{display:flex;align-items:center;gap:8px;min-width:0}.m-card-title h3{font-size:16px;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.m-badge{display:inline-flex;flex:none;padding:4px 7px;border-radius:5px;background:#fff2d8;color:#956315;font-size:10px}.m-badge.free{background:#e9f8e8;color:#28703e}.m-parking-card>p,.m-detail-head>p{display:flex;align-items:center;gap:5px;color:var(--m-muted);font-size:11px;margin:12px 0}.m-availability{display:grid;grid-template-columns:1fr 1fr auto;gap:13px;align-items:center;padding:12px 0;border-top:1px solid #eef2ef}.m-availability>div:not(.m-distance){display:flex;flex-direction:column;gap:4px}.m-availability strong{color:var(--m-green);font-size:23px;line-height:1}.m-availability strong.electric{color:#138a83}.m-availability span{display:flex;align-items:center;gap:2px;color:#849089;font-size:9px}.m-distance{font-size:10px;color:#477262;background:#edf6f1;border-radius:99px;padding:6px 8px}.m-fee{padding-top:10px;border-top:1px solid #eef2ef;color:#718078;font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.m-empty{border:1px dashed #ccd9d2;border-radius:15px;padding:38px 20px;text-align:center;color:#819087;font-size:13px;background:#fff}.m-disclaimer{text-align:center;color:#a1aba5;font-size:9px;margin:18px 0}.m-page-state{min-height:60vh;display:grid;place-items:center;align-content:center;gap:14px;color:var(--m-muted);font-size:13px}.m-page-state a{color:var(--m-green)}.m-detail{padding:18px}.m-back{display:flex;align-items:center;gap:5px;color:var(--m-muted);font-size:13px;margin-bottom:22px}.m-detail-head h1{font-size:27px;line-height:1.25;margin:11px 0 7px}.m-detail-spaces{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:21px 0}.m-detail-spaces>div{background:#fff;border:1px solid var(--m-line);border-radius:15px;padding:15px;display:flex;flex-direction:column;gap:6px}.m-detail-spaces svg{color:var(--m-green)}.m-detail-spaces span{font-size:11px;color:var(--m-muted)}.m-detail-spaces strong{font-size:30px;color:var(--m-green)}.m-detail-spaces small{font-size:10px;color:#97a19c}.m-detail-info{background:#edf6f1;border-radius:14px;padding:16px;margin-bottom:24px}.m-detail-info h2{font-size:14px;margin:0 0 7px}.m-detail-info p{font-size:12px;line-height:1.7;color:#597068;margin:0}.m-primary-action,.m-secondary-action{width:100%;min-height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center;gap:8px;font-size:14px;font-weight:700}.m-primary-action{background:var(--m-green);color:#fff;border:0}.m-primary-action:disabled{opacity:.55}.m-secondary-action{color:var(--m-green);margin-top:10px;border:1px solid #cee0d7;background:#fff}.m-form-page,.m-records{padding:27px 18px}.m-form-page>div>span,.m-records>div>span{color:#4b9276}.m-form-page h1,.m-records h1{font-size:27px;margin:8px 0}.m-form-page>div>p{font-size:12px;color:var(--m-muted);margin-bottom:25px}.m-form-page form{display:flex;flex-direction:column;gap:16px}.m-form-page label{display:flex;flex-direction:column;gap:7px;font-size:12px;font-weight:600}.m-form-page input,.m-form-page select{height:46px;border:1px solid #d9e4de;background:#fff;color:var(--m-ink);border-radius:11px;padding:0 12px;outline:none;font-size:14px}.m-form-page input:focus,.m-form-page select:focus{border-color:#5b9c82;box-shadow:0 0 0 3px #2d765319}.m-card-types{display:grid;grid-template-columns:1fr 1fr;gap:9px}.m-card-types button{border:1px solid #d9e4de;background:#fff;border-radius:12px;padding:12px;text-align:left;color:var(--m-ink);font-weight:700}.m-card-types button.active{border:2px solid var(--m-green);background:#edf6f1}.m-card-types span{display:block;font-size:10px;color:var(--m-muted);font-weight:400;margin-top:4px}.m-form-error{color:#c64b3e;font-size:12px}.m-privacy{text-align:center;color:#929d97;font-size:9px;line-height:1.5}.m-success{text-align:center;padding-top:90px}.m-success>svg{color:var(--m-green)}.m-success>p{font-size:13px;color:var(--m-muted);line-height:1.7;margin-bottom:25px}.m-success>a:last-child{display:block;margin-top:18px;color:var(--m-muted);font-size:12px}.m-record-list{display:flex;flex-direction:column;gap:10px;margin-top:22px}.m-record-list article{background:#fff;border:1px solid var(--m-line);border-radius:14px;padding:15px;display:flex;justify-content:space-between;gap:10px}.m-record-list h2{font-size:14px;margin:0}.m-record-list p{font-size:11px;color:var(--m-muted);margin:7px 0}.m-record-list small{font-size:9px;color:#9ba59f}.m-status{font-size:10px;color:#4b8069;background:#edf6f1;border-radius:99px;padding:5px 8px;height:max-content}.m-record-empty{text-align:center;padding:75px 10px;color:var(--m-muted)}.m-record-empty svg{color:#8eb3a3}.m-record-empty h2{color:var(--m-ink);font-size:18px}.m-record-empty p{font-size:12px;line-height:1.7;margin-bottom:20px}@media(min-width:481px){body:has(.mobile-app){background:#dfe9e4}.mobile-tabbar{box-shadow:0 -8px 30px #163c2d12}}.m-meta{display:flex;flex-wrap:wrap;gap:6px;font-size:10px;color:#7a8a84;margin:8px 0 0}.m-freshness{display:inline-flex;align-items:center;padding:3px 8px;border-radius:99px;background:#edf6f1;color:#4d806b;font-size:10px;margin-left:8px}.m-freshness.stale{background:#fff2df;color:#9d5f1a}.m-freshness.unavailable{background:#f8e8e8;color:#a14c4c}.m-freshness-note{margin-top:9px;padding:8px 10px;border-radius:10px;background:#f1f6f3;color:#60716a;font-size:10px;line-height:1.5}.m-detail-meta{display:flex;flex-direction:column;gap:6px;margin-top:10px;font-size:11px;color:#60716a}.m-capability-note{margin:11px 0 0;color:#d7eee5;font-size:11px;line-height:1.5}.m-voice-confirm{margin:-4px 16px 4px;padding:13px;border:1px solid var(--m-line);border-radius:8px;background:#fff;box-shadow:0 6px 16px #154c3612}.m-voice-confirm label{display:block;margin-bottom:7px;font-size:12px;font-weight:700;color:var(--m-ink)}.m-voice-confirm textarea{box-sizing:border-box;width:100%;min-height:72px;resize:vertical;border:1px solid #d9e4de;border-radius:6px;padding:9px;font:inherit;color:var(--m-ink)}.m-voice-confirm>div{display:flex;justify-content:flex-end;gap:8px;margin-top:10px}.m-voice-confirm button{border:1px solid #cee0d7;border-radius:6px;padding:7px 10px;background:#fff;color:var(--m-green);font-size:12px}.m-voice-confirm button:last-child{background:var(--m-green);color:#fff}body:has(.mobile-app){overscroll-behavior-y:none;-webkit-tap-highlight-color:transparent}.mobile-app{min-height:100svh;box-shadow:none}.mobile-header{height:calc(56px + env(safe-area-inset-top))!important;padding:env(safe-area-inset-top) 16px 0!important}.mobile-brand>span{border-radius:7px}.mobile-location{max-width:42%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.mobile-main{padding-bottom:calc(70px + env(safe-area-inset-bottom))!important}.mobile-tabbar{height:calc(62px + env(safe-area-inset-bottom));padding:4px 24px env(safe-area-inset-bottom)}.mobile-tabbar a{min-width:72px;min-height:52px;font-size:11px;touch-action:manipulation}.mobile-tabbar a:active{background:#edf6f1}.m-home{padding-bottom:12px}.m-hero{background:#0c5b45;padding:24px 18px 30px}.m-hero h1{font-size:29px;line-height:1.24;letter-spacing:0;margin:8px 0 10px}.m-hero p{max-width:340px;line-height:1.65}.m-locate{width:100%;min-height:44px;margin-top:17px;padding:10px 12px;border-radius:8px;justify-content:flex-start;text-align:left;font-size:12px;line-height:1.45;touch-action:manipulation}.m-locate:disabled{opacity:.72}.m-capability-note{padding-left:2px;color:#d7eee5}.m-search{height:52px;margin:0 14px;border-radius:8px;padding:0 8px 0 13px;transform:translateY(-14px);box-shadow:0 8px 22px #154c361a}.m-search:focus-within,.m-destination-search:focus-within{border-color:#5b9c82;box-shadow:0 0 0 3px #2d765319}.m-search input,.m-destination-search input{min-width:0;font-size:16px}.m-search input::-webkit-search-cancel-button{display:none}.m-input-action,.m-destination-search button{flex:none;width:40px!important;height:40px!important;border-radius:7px!important;background:transparent!important;color:var(--m-green)!important;touch-action:manipulation}.m-input-action:active,.m-destination-search button:active{background:#edf6f1!important}.m-input-action.is-recording{background:#feeceb!important;color:#b43f36!important}.m-destination-toggle{min-height:44px;margin:-8px 16px 6px;padding:0;background:transparent;color:#326f5a;display:flex;align-items:center;gap:7px;font-size:12px;touch-action:manipulation}.m-destination-toggle span{max-width:calc(100vw - 66px);overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.m-destination-search{height:48px;margin:0 16px 10px;padding:0 7px 0 12px;border:1px solid var(--m-line);border-radius:8px;background:#fff;display:flex;align-items:center;gap:8px}.m-destination-search>svg{flex:none;color:var(--m-green)}.m-destination-search input{flex:1;border:0;outline:0;background:transparent;color:var(--m-ink)}.m-rule-scroll{gap:7px;padding:4px 16px 5px;scroll-padding-left:16px}.m-rule-scroll button{min-height:40px;border-radius:7px;padding:8px 13px;font-size:12px;touch-action:manipulation}.m-rule-scroll button:active{transform:scale(.98)}.m-section-title{padding:22px 16px 11px}.m-section-title span{letter-spacing:.08em}.m-section-title h2{font-size:20px;letter-spacing:0}.m-refresh{width:44px;height:44px;border-radius:8px;background:transparent;color:#60766c;display:grid;place-items:center;touch-action:manipulation}.m-refresh:active{background:#e9f1ed}.m-refresh:disabled{opacity:.55}.is-spinning{animation:m-spin .8s linear infinite}.m-data-notice{margin:0 14px 10px;padding:10px 12px;border-left:3px solid #d59b3a;background:#fff7e8;color:#76531d;font-size:11px;line-height:1.55}.m-list{gap:10px;padding:0 12px}.m-parking-card{border-radius:8px;padding:15px;box-shadow:0 3px 12px #1744320a;touch-action:manipulation}.m-parking-card:active{background:#f8fbf9}.m-card-title{gap:10px}.m-card-title>div{display:block;flex:1;min-width:0}.m-card-title>svg{flex:none;color:#8b9992}.m-card-title h3{font-size:16px;line-height:1.4;white-space:normal;overflow-wrap:anywhere}.m-card-tags{display:flex;align-items:center;gap:6px;margin-top:7px}.m-freshness{margin-left:0}.m-parking-card>p{margin:11px 0 8px;font-size:12px;line-height:1.45}.m-meta{gap:4px 10px;font-size:10px;line-height:1.45}.m-availability{grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;gap:8px;padding:13px 0;margin-top:11px}.m-availability strong{font-size:25px}.m-availability span{font-size:10px;line-height:1.4}.m-distance{white-space:nowrap;border-radius:6px;padding:6px 7px}.m-freshness-note{border-radius:6px;line-height:1.55}.m-card-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:11px;margin-top:10px;border-top:1px solid #eef2ef}.m-fee{min-width:0;flex:1;padding:0;border:0;font-size:10px}.m-reason{flex:none;color:#477262;font-size:10px}.m-empty{border-radius:8px;padding:34px 20px;line-height:1.65}.m-empty p{margin:0 0 12px}.m-empty button{min-height:40px;padding:0 16px;border-radius:7px;background:var(--m-green);color:#fff}.m-disclaimer{font-size:10px;line-height:1.5;padding:0 16px}.m-voice-confirm{margin:-4px 14px 8px;border-radius:8px}.m-voice-confirm textarea{font-size:16px}.m-voice-confirm button{min-height:40px;padding:7px 14px;touch-action:manipulation}.m-detail h1,.m-form-page h1,.m-records h1{letter-spacing:0}@keyframes m-spin{to{transform:rotate(360deg)}}@media(min-width:481px){.mobile-app{box-shadow:0 0 60px #0003}}.app-shell nav{display:flex;gap:8px;height:100%;align-items:center}.app-shell nav a{display:flex;align-items:center;gap:7px;color:#8ea39b;padding:9px 13px;border-radius:8px;font-size:13px}.app-shell nav a.active,.app-shell nav a:hover{background:#14342b;color:#e8f1ee}.mobile-tabbar a:hover{background:transparent;color:#819087}.mobile-tabbar a.active{background:transparent;color:var(--m-green)}.mobile-tabbar a.active:hover{color:var(--m-green)}
