@import url('./tokens.css');
*{box-sizing:border-box}body{margin:0;background:var(--gw-sand-50);color:var(--gw-ink);font:16px/1.45 var(--gw-font)}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}button:disabled,[aria-disabled="true"]{opacity:.45;cursor:not-allowed}a{color:var(--gw-green-700)}:focus-visible{outline:3px solid var(--gw-warn);outline-offset:3px}h1,h2,h3,p{margin:0 0 16px}h1{font-size:28px;letter-spacing:-.7px}h2{font-size:22px}small{color:var(--gw-ink-2)}
.gw-app{min-height:100dvh}.gw-topbar{height:80px;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:16px 32px;background:var(--gw-surface);border-bottom:1px solid var(--gw-sand-200)}.gw-brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--gw-green-900);font-size:21px;font-weight:750;letter-spacing:-.5px}.gw-brand img{width:40px;height:40px}.gw-context{display:flex;align-items:center;gap:16px;font-size:13px}.gw-nav{position:fixed;inset:auto 0 0;z-index:10;display:flex;justify-content:center;background:var(--gw-green-900);padding:8px 16px;gap:8px}.gw-nav a{min-height:56px;flex:1;max-width:150px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;color:var(--gw-sand-50);text-decoration:none;font-size:12px;border-radius:10px}.gw-nav a[aria-current="page"]{background:var(--gw-green-700);box-shadow:inset 0 -3px var(--gw-sand-200)}.gw-icon{width:22px;height:22px;flex:none}.gw-main{padding:24px 32px 104px;max-width:1600px;margin:auto;min-height:calc(100dvh - 80px)}.gw-btn{min-height:44px;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 16px;border:1px solid var(--gw-sand-200);border-radius:10px;background:var(--gw-surface);color:var(--gw-ink);text-decoration:none;font-weight:600}.gw-btn.primary{background:var(--gw-green-700);border-color:var(--gw-green-700);color:var(--gw-surface)}.gw-btn.ghost{background:transparent;border-color:transparent}.gw-btn.danger{background:var(--gw-bad);color:var(--gw-surface);border-color:var(--gw-bad)}.gw-card{padding:24px;background:var(--gw-surface);border:1px solid var(--gw-sand-200);border-radius:var(--gw-radius)}.gw-list{list-style:none;padding:0;margin:0}.gw-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 0;border-bottom:1px solid var(--gw-sand-200)}.gw-row:last-child{border-bottom:0}.gw-table{width:100%;border-collapse:collapse;text-align:left;font-size:14px}.gw-table th{background:var(--gw-green-100);font-weight:600}.gw-table th,.gw-table td{padding:12px 16px;border-bottom:1px solid var(--gw-sand-200)}.gw-table tr[aria-selected="true"],.gw-row[aria-selected="true"]{background:var(--gw-green-100);box-shadow:inset 4px 0 var(--gw-green-700)}.gw-chip,.gw-badge{display:inline-flex;align-items:center;gap:4px;border-radius:24px;padding:4px 12px;background:var(--gw-sand-50);font-size:12px;font-weight:650}.gw-chip.ok{color:var(--gw-green-700);background:var(--gw-green-100)}.gw-chip.warn{color:var(--gw-ink);border:1px solid var(--gw-warn)}.gw-chip.bad{color:var(--gw-bad);border:1px solid var(--gw-bad)}.gw-tabs{display:flex;gap:4px;border-bottom:1px solid var(--gw-sand-200);overflow:auto}.gw-tabs button{min-height:44px;padding:12px 16px;border:0;background:transparent;color:var(--gw-ink-2)}.gw-tabs [aria-selected="true"]{color:var(--gw-green-700);background:var(--gw-green-100);box-shadow:inset 0 -3px var(--gw-green-700)}.gw-modal{border:1px solid var(--gw-sand-200);border-radius:var(--gw-radius);padding:24px;max-width:min(760px,92vw);max-height:90dvh;overflow:auto;color:var(--gw-ink);background:var(--gw-surface)}.gw-modal::backdrop{background:var(--gw-green-900);opacity:.45}.gw-modal-close{float:right}.gw-toast{position:fixed;bottom:96px;left:50%;transform:translateX(-50%);z-index:50;background:var(--gw-green-900);color:var(--gw-sand-50);border-radius:10px;padding:16px 24px;max-width:90vw;box-shadow:0 8px 24px var(--gw-sand-200)}.gw-keypad{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.gw-keypad button{min-height:56px;border:1px solid var(--gw-sand-200);border-radius:10px;background:var(--gw-sand-50);font-size:22px}.gw-field{display:flex;flex-direction:column;gap:8px;margin-bottom:16px}.gw-field input,.gw-field select,.gw-field textarea,input.gw-pin{min-height:48px;border:1px solid var(--gw-sand-200);border-radius:8px;padding:12px;background:var(--gw-surface);color:var(--gw-ink);width:100%}.gw-pin{font-size:24px;letter-spacing:10px;text-align:center}.gw-empty,.gw-loading,.gw-nodata{min-height:220px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:16px;padding:32px;color:var(--gw-ink-2)}.gw-loading:before{content:'';width:28px;height:28px;border:3px solid var(--gw-sand-200);border-top-color:var(--gw-green-700);border-radius:50%;animation:gw-spin 1s linear infinite}@keyframes gw-spin{to{transform:rotate(360deg)}}.gw-timeline{overflow:auto;display:grid;gap:1px;background:var(--gw-sand-200)}.gw-legend{display:flex;gap:16px;flex-wrap:wrap;font-size:12px;color:var(--gw-ink-2)}.gw-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:16px}.gw-profile-dark{background:var(--gw-green-900);color:var(--gw-sand-50)}.gw-profile-dark .gw-main{background:var(--gw-green-900)}.gw-skip{position:fixed;top:-100px;left:16px;z-index:100;background:var(--gw-surface);padding:12px}.gw-skip:focus{top:8px}@media(max-width:760px){.gw-topbar{height:auto;padding:16px;gap:12px}.gw-context{gap:8px}.gw-context time{display:none}.gw-main{padding:24px 16px 104px}.gw-nav{gap:0;padding:8px 4px}.gw-nav a{font-size:10px;min-width:0}.gw-brand{font-size:18px}.gw-table{display:block;overflow:auto}.gw-card{padding:16px}}@media(prefers-reduced-motion:reduce){.gw-loading:before{animation:none}}
[hidden]{display:none!important}
