:root{--ink:#17211d;--muted:#66736d;--paper:#f4f5f1;--surface:#fff;--green:#173f35;--green2:#245a4b;--line:#dfe4df;--amber:#a66a18;--red:#a83f36;--blue:#315b7d;--radius:14px}*{box-sizing:border-box}body,html{background:var(--paper)}body{margin:0;color:var(--ink);font-family:Tahoma,Arial,sans-serif;min-height:100dvh}button,input,select,textarea{font:inherit}a,button{touch-action:manipulation}.shell{max-width:760px;margin:auto;min-height:100dvh;padding:calc(18px + env(safe-area-inset-top)) 16px calc(92px + env(safe-area-inset-bottom))}.topbar{justify-content:space-between;margin-bottom:24px}.brand,.topbar{display:flex;align-items:center}.brand{gap:12px}.mark{width:44px;height:44px;border-radius:12px;background:var(--green);color:white;display:grid;place-items:center;font-weight:800;letter-spacing:-2px}.kicker{font-size:12px;color:var(--muted)}h1,h2,h3,p{margin-top:0}h1{font-size:28px;line-height:1.25;margin-bottom:5px}h2{font-size:20px;margin:26px 0 13px}.muted{color:var(--muted);font-size:14px}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:10px;gap:10px}.action{min-height:110px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:17px;text-decoration:none;color:var(--ink);display:flex;flex-direction:column;justify-content:space-between;box-shadow:0 4px 18px rgba(23,63,53,.04);transition:.15s}.action:active,.btn:active{transform:scale(.98)}.action.primary{background:var(--green);color:white;border-color:var(--green);grid-column:span 2}.icon{font-size:24px}.counters{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:8px;gap:8px}.counter{background:white;border:1px solid var(--line);border-radius:12px;padding:13px}.counter b{display:block;font-size:22px;margin-bottom:5px}.counter span{font-size:11px;color:var(--muted)}.card{background:white;border:1px solid var(--line);border-radius:var(--radius);padding:17px;margin-bottom:10px}.row{display:flex;align-items:center;justify-content:space-between;gap:12px}.badge{display:inline-flex;padding:6px 9px;border-radius:999px;background:#e8efec;color:var(--green);font-size:11px;font-weight:700}.badge.danger{background:#fae8e6;color:var(--red)}.badge.warn{background:#fff2dc;color:var(--amber)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:0 18px;border:0;border-radius:12px;background:var(--green);color:white;font-weight:700;cursor:pointer;text-decoration:none}.btn.secondary{background:white;color:var(--green);border:1px solid var(--line)}.btn.danger{background:var(--red)}.btn:disabled{opacity:.45;cursor:not-allowed}.field{margin-bottom:15px}.field label{display:block;font-weight:700;font-size:13px;margin-bottom:7px}.input{width:100%;min-height:50px;border:1px solid #ccd4ce;border-radius:11px;padding:11px 13px;background:white;color:var(--ink)}textarea.input{min-height:100px}.alert{padding:13px;border-radius:11px;background:#fff2dc;color:#70470e;margin:12px 0;font-size:13px}.alert.danger{background:#fae8e6;color:#7a2821}.bottomnav{position:fixed;bottom:0;left:0;right:0;background:rgba(255,255,255,.96);border-top:1px solid var(--line);padding:8px 12px calc(8px + env(safe-area-inset-bottom));display:flex;justify-content:center;z-index:10}.bottomnav nav{display:grid;grid-template-columns:repeat(4,1fr);width:min(100%,760px)}.bottomnav a{text-align:center;text-decoration:none;color:var(--muted);font-size:11px;padding:8px}.bottomnav a b{display:block;font-size:18px;color:var(--green);margin-bottom:3px}.login{min-height:100dvh;display:grid;align-content:center;max-width:440px;margin:auto;padding:28px}.login .mark{width:66px;height:66px;font-size:21px;margin-bottom:24px}.login h1{font-size:34px}.login .btn{width:100%;margin-top:20px}.timeline{border-right:2px solid var(--line);padding-right:18px}.timeline .item{position:relative;margin-bottom:18px}.timeline .item:before{content:"";position:absolute;right:-24px;top:5px;width:10px;height:10px;border-radius:50%;background:var(--green)}.tabs{display:flex;overflow:auto;gap:7px;margin:0 -16px 18px;padding:0 16px}.tabs button{white-space:nowrap;border:1px solid var(--line);background:white;border-radius:999px;padding:9px 13px}.tabs button.active{background:var(--green);color:white}.empty{text-align:center;padding:32px;color:var(--muted)}@media(min-width:700px){.shell{padding-left:24px;padding-right:24px}.grid.actions{grid-template-columns:repeat(3,1fr)}.action.primary{grid-column:span 2}.counters{grid-template-columns:repeat(6,1fr)}}@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}