:root{--red:#ec3324;--red-soft:#fdecea;--brown:#612605;--leaf:#4a843e;--leaf-soft:#edf3eb;--bg:#fafafa;--card:#fff;--ink:#111;--muted:#6b6b6b;--line:#ebebeb;--radius:10px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--bg);color:var(--ink);-webkit-text-size-adjust:100%;font-family:Helvetica Neue,Helvetica,Arial,sans-serif;font-size:16px;line-height:1.45}a{color:var(--ink);text-decoration:none}h1{margin:0 0 4px;font-size:1.6rem}h2{margin:28px 0 12px;font-size:1.15rem}h3{margin:16px 0 8px;font-size:1rem}p{margin:0 0 8px}.muted{color:var(--muted)}.small{font-size:.875rem}.error{color:var(--red)}.info{color:var(--leaf);font-weight:600}.topbar{z-index:10;padding:calc(env(safe-area-inset-top) + 10px) 16px 10px;background:var(--card);border-bottom:1px solid var(--line);align-items:center;gap:16px;display:flex;position:sticky;top:0}.topbar nav{flex:1;gap:16px;display:flex}.topbar nav a{color:var(--muted);font-weight:500}.topbar nav a.active,.topbar nav a:hover{color:var(--ink)}.brand-small{color:var(--ink);align-items:center;gap:10px;font-weight:600;display:flex}.mark{width:32px;height:32px;display:block}button.link{color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:0;padding:0}.page{width:100%;max-width:1040px;margin:0 auto;padding:20px 16px 40px}.login{flex:1;justify-content:center;align-items:center;min-height:0;padding:16px;display:flex}.login .card{width:100%;max-width:400px;padding:28px}.brand{align-items:center;gap:14px;margin-bottom:24px;display:flex}.brand h1{font-size:1.25rem}.brand p{margin:0}.badge{background:var(--red);color:#fff;letter-spacing:1px;border-radius:10px;flex:none;justify-content:center;align-items:center;padding:12px 10px;font-size:1rem;font-weight:700;display:inline-flex}.stack{flex-direction:column;gap:14px;display:flex}label{flex-direction:column;gap:6px;font-size:.95rem;font-weight:500;display:flex}input,select{font:inherit;border:1px solid var(--line);color:var(--ink);background:#fff;border-radius:10px;padding:12px;font-size:16px}input:focus,select:focus{outline:2px solid var(--red);outline-offset:0;border-color:var(--red)}button[type=submit]:not(.link){font:inherit;background:var(--red);color:#fff;cursor:pointer;border:0;border-radius:10px;padding:12px 16px;font-weight:600}button:disabled{opacity:.6;cursor:default}.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);flex-direction:column;gap:4px;padding:16px;display:flex}.card.narrow{max-width:520px}.cards{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px;display:grid}.grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px;display:grid}.tile{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);color:var(--ink);flex-direction:column;gap:4px;padding:16px;display:flex}a.tile:hover{border-color:var(--ink)}.tile .code{letter-spacing:1px;color:var(--brown);font-size:.75rem;font-weight:700}.tile.inactive{opacity:.6}.tile.soon{background:0 0;border-style:dashed}.chips{flex-wrap:wrap;gap:6px;margin-top:6px;display:flex}.chip{color:var(--ink);background:#f2f2f2;border-radius:999px;padding:2px 8px;font-size:.75rem;font-weight:600}.tabs{flex-wrap:wrap;gap:8px;margin:12px 0 4px;display:flex}.tabs a{border:1px solid var(--line);background:var(--card);color:var(--ink);border-radius:999px;padding:6px 14px;font-size:.9rem;font-weight:600}.tabs a.active{background:var(--ink);border-color:var(--ink);color:#fff}.block{margin-bottom:16px}.table-wrap{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:.95rem}th,td{text-align:left;border-bottom:1px solid var(--line);white-space:nowrap;padding:10px 12px}th{text-transform:uppercase;letter-spacing:.6px;color:var(--muted);background:var(--bg);font-size:.75rem;font-weight:600}tr:last-child td{border-bottom:0}@media (max-width:560px){.hide-sm{display:none}h1{font-size:1.35rem}}button.link{color:var(--ink);text-underline-offset:3px;text-decoration:underline}button.link.center{color:var(--muted);align-self:center;font-size:.9rem}summary.link{cursor:pointer;text-underline-offset:3px;text-decoration:underline;list-style:none}summary.link::-webkit-details-marker{display:none}code{background:#f2f2f2;border-radius:6px;padding:2px 6px;font-family:SF Mono,Menlo,Consolas,monospace;font-size:.95em}h2.first{margin-top:0}.form-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));align-items:end;gap:12px;display:grid}.form-grid .full{grid-column:1/-1}.notice{border-radius:var(--radius);background:var(--leaf-soft);border:1px solid #cfe0ca;flex-direction:column;gap:6px;padding:14px 16px;display:flex}.list{flex-direction:column;gap:10px;display:flex}.row{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);flex-direction:column;gap:10px;padding:14px 16px;display:flex}.row.inactive{opacity:.6}.row-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.row-actions{flex-wrap:wrap;align-items:flex-start;gap:18px;font-size:.9rem;display:flex}.row-actions details[open]{flex-basis:100%}.row-actions details form{margin-top:10px}.chip{align-items:center;gap:4px;display:inline-flex}.chip-x{font:inherit;color:var(--muted);cursor:pointer;background:0 0;border:0;padding:0 0 0 4px;font-size:1rem;line-height:1}.chip-x:hover{color:var(--red)}.tag{color:var(--red);background:var(--red-soft);white-space:nowrap;border-radius:999px;padding:2px 8px;font-size:.75rem;font-weight:600}@media (max-width:560px){.full-sm{grid-column:1/-1}}body{flex-direction:column;min-height:100dvh;display:flex;position:relative}body>main{flex:1}.page,.login,.copyright{z-index:1;position:relative}.copyright{text-align:center;color:var(--muted);padding:12px 16px calc(env(safe-area-inset-bottom) + 12px);font-size:.75rem}.menu{position:relative}.menu summary{cursor:pointer;color:var(--muted);font-weight:500;list-style:none}.menu summary::-webkit-details-marker{display:none}.menu summary:after{content:" ▾";font-size:.75em}.menu[open] summary,.menu summary:hover{color:var(--ink)}.menu-pop{z-index:20;background:var(--card);border:1px solid var(--line);border-radius:var(--radius);flex-direction:column;min-width:220px;padding:6px;display:flex;position:absolute;top:calc(100% + 10px);left:-12px;box-shadow:0 8px 24px #00000014}.menu-pop a{color:var(--ink);border-radius:8px;padding:10px 12px}.menu-pop a:hover{background:var(--bg)}.menu-pop hr{border:0;border-top:1px solid var(--line);margin:6px 0}.crumbs{color:var(--muted);margin-bottom:6px;font-size:.85rem}.crumbs a{color:var(--muted)}.title-row{justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.title-row h1{margin:0}.search{max-width:420px;margin:12px 0}.search input{width:100%}a.button,.actions button[type=submit]{background:var(--red);color:#fff;border-radius:10px;justify-content:center;align-items:center;padding:10px 18px;font-weight:600;display:inline-flex}a.button-secondary{border:1px solid var(--line);color:var(--ink);background:var(--card);border-radius:10px;justify-content:center;align-items:center;padding:10px 18px;font-weight:600;display:inline-flex}.actions{flex-wrap:wrap;gap:10px;display:flex}button.link.danger{color:var(--red)}textarea{font:inherit;border:1px solid var(--line);color:var(--ink);resize:vertical;background:#fff;border-radius:10px;padding:12px;font-size:16px}textarea:focus{outline:2px solid var(--red);outline-offset:0;border-color:var(--red)}input:disabled,select:disabled{background:var(--bg);color:var(--muted)}.req{color:var(--red)}.hint{color:var(--muted);font-size:.8rem;font-weight:400}table.clickable td:first-child a{color:var(--ink);font-weight:600}tr.inactive td{color:var(--muted)}.details{gap:12px;margin:0;display:grid}.details dt{text-transform:uppercase;letter-spacing:.6px;color:var(--muted);font-size:.75rem}.details dd{white-space:pre-line;margin:2px 0 0}.stack-grid{grid-template-columns:repeat(auto-fill,minmax(56px,1fr));gap:6px;margin-bottom:8px;display:grid}.stack-cell button,.stack-cell span{text-align:center;width:100%;font:inherit;background:var(--card);border:1px solid var(--line);color:var(--ink);cursor:pointer;border-radius:8px;padding:8px 0;font-size:.85rem;font-weight:600;display:block}.stack-cell.off button,.stack-cell.off span{color:var(--muted);background:var(--bg);text-decoration:line-through}.add-stacks{max-width:420px;margin-top:16px}.danger-zone{border-top:1px solid var(--line);flex-direction:column;align-items:flex-start;gap:6px;margin-top:32px;padding-top:16px;display:flex}.confirm{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.r{text-align:right}td.warn,span.warn{color:var(--red)}span.ok{color:var(--leaf)}.filters{flex-wrap:wrap;align-items:center;gap:8px;margin:12px 0;display:flex}.filters input,.filters select{padding:9px 10px}.filters button{font:inherit;background:var(--ink);color:#fff;cursor:pointer;border:0;border-radius:10px;padding:9px 16px;font-weight:600}.memo-form{flex-direction:column;gap:8px;display:flex}.memo-form h2{margin:20px 0 8px}table.entry td{padding:4px}table.entry input,table.entry select{border-radius:8px;width:100%;min-width:80px;padding:8px;font-size:15px}table.entry input.r{text-align:right}tfoot td{border-top:1px solid var(--line);background:var(--bg);font-weight:700}.totals{flex-wrap:wrap;align-items:center;gap:18px;margin:10px 2px;font-size:.95rem;display:flex}.details.cols{grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}.cancel-box{max-width:420px}.danger-button{background:var(--red)!important}.stat-grid{margin:12px 0 20px}.stat-grid .tile strong{font-size:1.4rem}.topbar nav{flex-wrap:wrap}.print-page{background:#fff;padding:16px}.print-bar{align-items:center;gap:12px;max-width:760px;margin:0 auto 16px;display:flex}.print-button{font:inherit;background:var(--red);color:#fff;cursor:pointer;border:0;border-radius:10px;padding:10px 18px;font-weight:600}.doc{color:#111;max-width:760px;margin:0 auto;padding:4mm 2mm;font-family:Helvetica Neue,Helvetica,Arial,sans-serif;font-size:10.5px;line-height:1.45}.doc-head{border-bottom:1.5px solid #111;justify-content:space-between;align-items:flex-start;gap:24px;padding-bottom:14px;display:flex}.doc-brand{align-items:flex-start;gap:12px;display:flex}.doc-logo{width:40px;height:40px;margin-top:2px}.doc-blessing{letter-spacing:1.5px;color:#612605;margin:0 0 2px;font-size:9px}.doc-brand h1{letter-spacing:1.2px;margin:0 0 4px;font-size:17px;font-weight:700}.doc-brand p{color:#555;max-width:340px;margin:0;font-size:9.5px}.doc-meta{text-align:right}.doc-meta .doc-type{letter-spacing:2px;color:#ec3324;margin:0 0 4px;font-size:9px;font-weight:700}.doc-meta .doc-no{margin:0 0 2px;font-size:14px;font-weight:700}.doc-meta p{color:#555;margin:0}.doc-meta .cancelled{color:#ec3324;letter-spacing:1px;font-weight:700}.doc-fields{border-bottom:1px solid #ddd;grid-template-columns:repeat(4,1fr);gap:10px 18px;padding:14px 0;display:grid}.doc-fields div{min-width:0}.doc-fields .wide{grid-column:span 2}.doc-label{letter-spacing:.8px;text-transform:uppercase;color:#888;margin-bottom:2px;font-size:8.5px;display:block}.doc-fields strong{font-weight:600}.doc-section{margin-top:16px}.doc-section h3{letter-spacing:.8px;text-transform:uppercase;color:#888;margin:0 0 4px;font-size:8.5px;font-weight:600}.doc-table{border-collapse:collapse;width:100%}.doc-table th{text-align:left;letter-spacing:.6px;text-transform:uppercase;color:#888;white-space:nowrap;background:0 0;border-bottom:1px solid #111;padding:5px 6px;font-size:8.5px;font-weight:600}.doc-table td{white-space:nowrap;border-bottom:1px solid #eee;padding:6px;font-size:10.5px}.doc-table .r{text-align:right}.doc-table tfoot td{border-top:1px solid #111;border-bottom:0;font-weight:700}.doc-notes{grid-template-columns:1fr 1fr;gap:18px;margin-top:16px;display:grid}.doc-notes p{margin:0}.doc-signs{justify-content:space-between;gap:60px;margin-top:64px;display:flex}.doc-signs div{text-align:center;color:#555;border-top:1px solid #111;flex:1;padding-top:6px;font-size:9.5px}.doc-foot{text-align:center;color:#aaa;margin-top:28px;font-size:8px}@media print{@page{size:A4;margin:0}html,body{background:#fff;min-height:0!important;display:block!important}.no-print,.topbar,body>.copyright{display:none!important}.print-page{padding:12mm 12mm 0}.doc{padding:0}}.menu-soon{color:var(--muted);max-width:240px;padding:10px 12px;font-size:.9rem;display:block}.prefixed{border:1px solid var(--line);background:#fff;border-radius:10px;align-items:stretch;display:flex;overflow:hidden}.prefixed .prefix{color:var(--muted);white-space:nowrap;background:var(--bg);border-right:1px solid var(--line);align-items:center;padding:0 8px 0 12px;font-size:.9rem;display:flex}.prefixed input{border:0;border-radius:0;flex:1;min-width:0}.prefixed input:focus{outline:none}.prefixed:focus-within{outline:2px solid var(--red);border-color:var(--red)}.doc.wide{max-width:1060px}.doc-table thead{display:table-header-group}.doc-table tr{break-inside:avoid}@media print{.print-page.landscape{padding:10mm 10mm 0}}
