/* Approved Nakatano cream/graphite theme; shared controls on every page. */
:root,:root[data-brand]{--ink:#353730;--muted:#817868;--line:#e5d8c0;--yellow:#fbe9b6;--action:#ecdfbc;--on-accent:#4a422e;--on-action:#51442a;--tint:#fcf4df;--tint-border:#ecdbb3;--brand-ink:#393d35}
body{margin:0;background-color:#fbf5e8;background-image:radial-gradient(ellipse at 108% 12%,transparent 0 27%,#b99b5714 27.1% 27.25%,transparent 27.35% 34%,#c58c8710 34.1% 34.22%,transparent 34.35% 42%,#b7a36712 42.1% 42.22%,transparent 42.35%);background-attachment:fixed}
body{font:14px/1.5 system-ui,sans-serif;color:#353730;color-scheme:light}body *{box-sizing:border-box}body [hidden]{display:none!important}
body .shell{background:#fbf5e8;border:1px solid #e9dfcb;border-radius:16px;overflow:hidden;position:relative}body header{background:#303433;color:#fffdf6;padding:19px 28px;display:flex;justify-content:space-between;align-items:center;gap:18px;position:relative;isolation:isolate;overflow:hidden}body .route-identity{display:flex;gap:17px;align-items:center;z-index:2}body .route-identity>img{width:98px;height:98px;object-fit:contain}body .route-identity strong{font-size:34px;letter-spacing:-1px;color:#fffdf6}body .brand-arrow{color:#f3cc50}body .sub{font-size:12px;color:#dadacf}body header .muted{color:#deded3}body .rings{position:absolute;inset:0;z-index:-1;transform:rotate(-17deg)}body .rings i{position:absolute;right:-8%;width:58%;height:175px;top:15%;border:1px solid #edc74b;border-radius:100%}body .rings i:nth-child(2){top:39%;border-color:#e47570}body .rings i:nth-child(3){top:63%;border-color:#77a2c6}
body main{max-width:1040px;padding:24px;margin:auto;background-image:radial-gradient(ellipse at 108% 5%,transparent 0 37%,#d7b97518 37.1% 37.3%,transparent 37.4% 48%,#c58c8710 48.1% 48.3%,transparent 48.4%)}body .top{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-bottom:18px}body h1{font-size:25px;letter-spacing:-.5px;margin:0;color:#393d35}body h2{font-size:18px;margin:0 0 14px;color:#44483b}body h3{font-size:15px;margin:0 0 8px}body p{margin:8px 0;color:#7a7263}body .muted{font-size:12px;color:#817868}body .actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:16px}
body button,body .map-button,body a.primary,body a.ghost{font-family:system-ui,sans-serif;font-size:14px;font-weight:500;line-height:20px;min-height:44px;padding:11px 14px;border-radius:9px;border:1px solid #d7cbb5;background:#fffdf8;color:#5a513e;display:inline-flex;align-items:center;justify-content:center;gap:5px;text-decoration:none;vertical-align:middle;margin:0;box-shadow:0 1px 2px #57431605}body button:hover,body .map-button:hover{background:#f8f0df}body button:focus-visible,body .map-button:focus-within{outline:2px solid #a68a49;outline-offset:3px}body button:disabled{opacity:.42}body .primary{background:#ecdfbc;border-color:#d4bd83;color:#51442a}body .smallbutton{font-size:14px;min-height:44px;padding:11px 14px}
body .danger{background:#fff!important;border:1px solid #df292f!important;color:#d51f27!important;font-weight:500}body .danger:hover{background:#fff4f3!important}body .danger:disabled{background:#fff!important}
body .yandex-route,body .mkad-button{background:#ffda49!important;border-color:#e7c13b!important;color:#423719!important}body .yandex-word{color:#ba2529!important;font-weight:600}
body label{font-size:13px;font-weight:400;color:#756b57;display:block}body input,body select,body textarea{font:16px/1.4 system-ui,sans-serif;color:#3e4135;background:#fff;border:1px solid #ded2bc;border-radius:8px;padding:10px;min-height:44px;width:100%;margin-top:6px}body input[type=checkbox]{width:17px;height:17px;min-height:17px;margin:0 5px 0 0;accent-color:#9c8854}body textarea{resize:vertical}body .fields{display:grid;grid-template-columns:1fr 1fr;gap:16px}body .wide{grid-column:1/-1}body .info{background:#fcf4df;border:1px solid #ecdbb3;padding:12px;border-radius:9px;font-size:13px}body .errorbox{padding:12px;border:1px solid #df292f;border-radius:9px;color:#b92529;background:#fff}
body .month-control{position:relative;display:flex;gap:16px;align-items:center;justify-content:space-between;min-height:44px;min-width:190px;border:1px solid #d7cbb5;border-radius:9px;background:#fffdf8;padding:10px 13px;font-size:14px;font-weight:500}body .month-control input{position:absolute;inset:0;opacity:0;height:100%;width:100%;margin:0}body .header-controls{margin:0}body .tabs{display:flex;gap:6px;flex-wrap:wrap;border-bottom:1px solid #e7dcc5;padding-bottom:14px;margin-bottom:20px}body .tabs button{background:transparent;border-color:transparent;color:#796e59}body .tabs button.active{background:#fbe9b6;border-color:#ead49c;color:#4a422e}
body .panel{background:#fffefb;border:1px solid #e5d8c0;border-radius:12px;padding:21px;margin-bottom:18px;box-shadow:0 5px 17px #77602006}body .dayhead{display:flex;align-items:center;justify-content:space-between;gap:15px;flex-wrap:wrap}body .dayhead h2{margin:0}body .chip{background:#f1e8d1;color:#7d6b43;border-radius:7px;padding:5px 9px;font-size:12px}body .dayhead-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
body .route-day{padding:0;overflow:hidden}body .route-day .dayhead{background:#fff4d8;border-bottom:1px solid #f0dfb7;padding:17px 21px}body .route-addresses{padding:6px 21px}body .address{display:flex;gap:12px;align-items:flex-start;padding:13px 0;border-bottom:1px solid #f0e9db}body .address:last-child{border:0}body .address>span{flex:0 0 28px;height:28px;border-radius:50%;background:#f2eddf;color:#74684e;display:grid;place-items:center;font-size:12px}body .address-body{padding-top:3px;min-width:0;overflow-wrap:anywhere;flex:1}body .visit-row-actions{display:flex;gap:8px;margin-top:5px}
body .day-route-controls{background:#fcf8ef;border-top:1px solid #eee4d1;margin:0;padding:18px 21px;align-items:flex-end;gap:18px}body .day-mileage{flex:0 1 225px}body .day-mileage input{text-align:center;margin-top:6px}body .save-badge{padding:10px 12px;background:#f0ece2;border-radius:7px;font-size:12px;min-height:40px;display:inline-block}body .save-badge.saved{background:#edf2e4;color:#56794d}body .day-edit-actions{margin:0;padding:12px 21px;background:#fcf8ef;border-top:1px solid #eee4d1;justify-content:flex-end}
body .selection-tools{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:18px;padding-top:15px;border-top:1px solid #eee4d1}body #deleteAllDays{margin-left:auto}body #selectedDays{font-size:12px;color:#817868}body #selectAllDays[aria-pressed=true]{background:#f4e4bb;border-color:#c3a76b}
body .receiptform{display:grid;grid-template-columns:1fr .7fr 1.4fr auto;align-items:end;gap:12px}body .tablewrap{overflow:auto}body table{width:100%;border-collapse:collapse;font-size:13px}body td,body th{padding:11px;border-bottom:1px solid #ece2d0;text-align:left;vertical-align:top}body th{font-size:12px;font-weight:500;background:#faf6ec;color:#81715b}body .metrics{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin-bottom:18px}body .metric{padding:14px;background:#fffefb;border:1px solid #e5d8c0;border-radius:10px}body .metric b{display:block;font-size:19px;margin-top:6px}body .password-settings{max-width:500px}body .password-settings>label{margin:14px 0}body .memo-map-row{display:flex;gap:12px;flex-wrap:wrap}body .memo-details{padding:12px 0}body .memo-select{display:flex;align-items:center;gap:6px}body .memo-controls{margin-top:10px}body .grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}body .mock-status{padding:12px;color:#726446;font-size:12px}body .empty{text-align:center;padding:26px}
@media(max-width:620px){body header{padding:16px;flex-wrap:wrap}body .route-identity>img{width:76px;height:76px}body .route-identity{gap:10px}body .route-identity strong{font-size:28px}body main{padding:18px 12px}body .top{gap:12px}body .header-controls{width:100%}body .month-control{min-width:0;flex:1}body .tabs{gap:2px}body .tabs button{font-size:13px;padding:10px}body .panel{padding:15px}body .route-day{padding:0}body .day-route-controls{display:grid;grid-template-columns:1fr;gap:12px;padding:15px}body .day-route-controls .save-badge{justify-self:start}body .route-day .dayhead{padding:15px}body .route-addresses{padding:5px 15px}body .selection-tools{gap:10px}body #deleteAllDays{margin-left:0;width:100%}body .fields,body .receiptform,body .grid{grid-template-columns:1fr}body .metrics{grid-template-columns:1fr 1fr}body .dayhead-actions{width:100%;justify-content:space-between}}

body header>div:last-child{z-index:2}body .header-controls>.month-control{width:210px;height:44px;flex:0 0 210px;margin:0}body .header-controls>button{height:44px}body .month-control:focus-within{outline:2px solid #a68a49;outline-offset:2px}
body .route-day .day-route-controls .day-mileage{display:block!important;margin:0!important;min-width:210px;max-width:260px;flex:0 1 240px}body .route-day .day-mileage>span{display:block;white-space:normal;margin-bottom:6px}body .route-day .day-mileage input{display:block;width:100%;max-width:none;margin:0;flex:auto}body .save-badge{max-width:220px;overflow-wrap:anywhere}
body .visit-row-actions button{border:0;background:transparent;color:#8a7960;min-height:36px;padding:6px 8px;font-size:13px}body .visit-kind-choices{display:flex;gap:8px;flex-wrap:wrap;margin:16px 0}body .visit-kind-choices button[aria-pressed=true]{background:#f8e8b6;border-color:#d6bb72}
body .login-layout{max-width:1060px;margin:7vh auto;display:grid;grid-template-columns:1.2fr 1fr;padding:0 24px}body .login-layout>.route-hero{background:linear-gradient(145deg,#3b403c,#303433);border-color:#555b52;min-height:510px;border-radius:20px 0 0 20px}body .login-layout .hero-copy{padding:35px;width:100%;z-index:3}body .login-layout .route-hero h2{font-size:43px;color:#fffdf6;letter-spacing:-1.6px}body .route-hero p{font-size:18px;color:#deded1}body .hero-eyebrow{color:#d2d3c3}body .login-layout .hero-car{width:75%;height:290px;right:18px;bottom:9px;top:auto}body .hero-trails{opacity:.8}body .hero-trails i{border-color:#edc74b}body .hero-trails i:nth-child(2){border-color:#e47570}body .hero-trails i:nth-child(3){border-color:#77a2c6}body .login-layout>.login{max-width:none;margin:0;width:100%;background:#fffefb;border:1px solid #e5d8c0;border-radius:0 20px 20px 0;box-shadow:none;padding:35px 28px;display:flex;flex-direction:column;justify-content:center}body .login h2{font-size:22px}body .login form>button[type=submit]{width:100%;margin-top:20px;min-height:48px;background:linear-gradient(110deg,#fbefcd,#ead7a2);color:#55472a;border:1px solid #d7bf82;box-shadow:0 4px 10px #8a6c2610}body .login form>label{margin-top:14px}
body .password-field{display:block;position:relative}body .password-field input{padding-right:94px}body .password-toggle{position:absolute;right:3px;top:8px;min-width:82px;min-height:38px;padding:7px;background:transparent;border:0;color:#8c784e;font-size:12px;box-shadow:none}body .password-toggle:hover{background:#f8f0df}body [data-car-select]{min-height:46px}body [data-car-select]+input:not([hidden]){margin-top:10px}
body .overlay{background:#30342f66}body .dialog{background:#fffefb;border:1px solid #e5d8c0}body .pdf-dialog{max-width:1040px!important;width:calc(100% - 24px);max-height:95vh!important}body .pdf-preview-header{display:flex;justify-content:space-between;align-items:center;gap:15px}body .pdf-preview-header h2{margin-bottom:4px}body .pdf-preview-paper{height:64vh;overflow:auto;min-height:300px;background:#e8e2d6;padding:14px;margin-top:18px;border-radius:10px}body .pdf-preview-paper canvas{display:block;margin:auto;background:#fff;box-shadow:0 2px 10px #544b371c;max-width:none}body .pdf-preview-paper #pdfRenderStatus{text-align:center}body .pdf-page-controls{gap:10px}body .pdf-page-controls label{display:flex;align-items:center;gap:8px}body .pdf-page-controls select{width:auto;margin:0}
body .memo-details .memo-distance,body .memo-details .memo-approval{margin-left:0!important}body input,body select,body textarea{accent-color:#9c8854}body input:focus,body select:focus,body textarea:focus{outline:2px solid #b9a066;outline-offset:1px}
@media(max-width:800px){body .login-layout{grid-template-columns:1fr;margin:18px auto;padding:0 14px;max-width:560px}body .login-layout>.route-hero{min-height:375px;border-radius:20px 20px 0 0}body .login-layout>.login{border-radius:0 0 20px 20px;padding:24px}body .login-layout .hero-car{height:225px;width:70%;bottom:7px}body .login-layout .hero-copy{padding:24px}body .login-layout .route-hero h2{font-size:34px}body .header-controls>.month-control{width:100%;flex:auto;min-width:0}body .route-day .day-route-controls .day-mileage{min-width:0;max-width:none;flex:auto}body .route-day .save-badge{justify-self:start}body .route-day .day-route-controls{display:grid;grid-template-columns:1fr;gap:12px}body .pdf-preview-paper{height:56vh}body .pdf-page-controls{gap:6px}body .pdf-page-controls label{width:100%;margin-top:6px}body .pdf-page-controls select{flex:1}body .pdf-dialog{width:100%!important;padding:14px!important}body .overlay{padding:8px}body .pdf-preview-header{flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}

body .danger:disabled{opacity:1;color:#c32229!important;border-color:#c32229!important;cursor:not-allowed;background:#fff!important;box-shadow:none}
