@font-face{font-family:"Inter Variable";src:url("fonts/inter-latin-wght-normal.woff2") format("woff2");font-style:normal;font-weight:100 900;font-display:swap}
@font-face{font-family:"Inter Variable";src:url("fonts/inter-latin-ext-wght-normal.woff2") format("woff2");font-style:normal;font-weight:100 900;font-display:swap;unicode-range:U+0100-02FF,U+1E00-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
:root{--app-bg:#f3f8fa;--ink:#213743;--surface:#fff;--sidebar:#edf8fb;--muted:#536c7b;--line:#cbdce4;--surface-alt:#edf8fb;--accent-soft:#eef8f9;--theme-link:#058194;--teal:#058194;--teal-dark:#046c7c;--font-scale:1;--sidebar-width:242px;--app-font:"Inter Variable","Segoe UI",Arial,sans-serif;--blue:var(--teal);--navy:var(--ink);--border:var(--line);background:var(--app-bg)}
body[data-theme=dark]{--app-bg:#10222b;--surface:#192c37;--sidebar:#132630;--ink:#e0edf2;--muted:#aec5d1;--line:#405c6c;--surface-alt:#223b48;--accent-soft:#20404a;--theme-link:#8bd9e4;--teal:#087c8e;--teal-dark:#066c7c;color-scheme:dark}
.pira-ui :is(aside,main,header){position:static;inset:auto;width:auto;height:auto;max-width:none;margin:0;background:transparent;color:inherit}
.pira-ui .pira-sidebar{position:sticky;top:0;height:100dvh;padding:26px 15px 14px;background:var(--sidebar)}
.pira-ui .pira-topbar{background:var(--sidebar)}
.pira-ui .pira-workspace{min-width:0}
.pira-ui .pira-brand-logo{width:36px;height:36px;object-fit:contain;border-radius:9px;background:var(--surface);padding:3px;flex:0 0 36px}
.pira-ui .pira-brand small,.pira-ui .pira-user small{letter-spacing:0;margin:0}
.pira-ui .pira-user{min-width:0}.pira-user strong{overflow-wrap:anywhere}
.pira-ui .pira-top-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.pira-ui .pira-kicker{color:var(--muted);font-size:10px;font-weight:700;letter-spacing:1.35px;margin-bottom:7px}
.pira-ui .heading{margin-bottom:26px;align-items:center}
.pira-ui .heading p{color:var(--muted);font-size:12px}
.pira-ui :is(.card,.panel,.item){background:var(--surface);border:1px solid var(--line);border-radius:10px;box-shadow:0 2px 3px #213b4c03;min-width:0}
.pira-ui .card strong{font-size:25px;margin:12px 0 3px}
.pira-ui :is(.muted,.empty,.card small){color:var(--muted)}
.pira-ui :is(button,.button){border:1px solid var(--teal);border-radius:7px;background:var(--teal);color:#fff;padding:8px 12px;font-size:12px;line-height:1.5}
.pira-ui :is(button,.button):hover:not(:disabled){background:var(--teal-dark)}
.pira-ui :is(button,.button).secondary{background:var(--surface);color:var(--ink);border-color:var(--line)}
.pira-ui :is(button,.button).secondary:hover{background:var(--surface-alt)}
.pira-ui button.danger,.pira-ui .error{background:var(--pira-danger-bg);color:var(--pira-danger-text);border-color:transparent}
.pira-ui :is(input,select,textarea){background:var(--surface);color:var(--ink);border-color:var(--line);border-radius:7px;min-width:0;padding:8px 10px}
.pira-ui .banner{background:var(--pira-warning-bg);color:var(--pira-warning-text);border:0;max-width:none;letter-spacing:.15px}
.pira-ui :is(.badge,.steps span){background:var(--accent-soft);color:var(--theme-link)}
.pira-ui th{background:var(--surface-alt);color:var(--muted);font-weight:600;text-transform:none}
.pira-ui :is(th,td){border-color:var(--line)}
.pira-ui .scroll{max-width:100%;border-radius:6px}
.pira-ui summary{color:var(--theme-link)}
.pira-ui .login{width:min(440px,calc(100% - 32px));margin:9vh auto 28px;padding:30px}
.pira-ui .login .pira-brand{padding:0;margin-bottom:18px}.pira-ui .login .banner{margin:16px 0}.pira-ui .login .muted{margin-top:12px}
.pira-ui #modal{max-width:none}.pira-ui #modal-content{overflow-wrap:anywhere}
.pira-ui #toast{background:var(--ink);color:var(--surface);max-width:calc(100vw - 50px)}
.pira-ui .mobile-menu{display:none}
@media(max-width:760px){.pira-ui .pira-sidebar{display:none}.pira-ui .mobile-menu{display:inline-flex}.pira-ui .pira-nav-dialog nav button{min-width:0}.pira-ui .pira-nav-dialog nav{display:block}.pira-ui .pira-nav-dialog .pira-brand small{display:block}.pira-ui .pira-topbar{padding:10px 17px}.pira-ui .heading{align-items:flex-start}.pira-ui .pira-breadcrumb>span{display:inline}.pira-ui .pira-top-actions .banner{font-size:9px}.pira-ui .pira-footer{padding:14px 17px}}
