@import "https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@500;600;700&family=Inter:wght@400;500;600;700&family=IBM+Plex+Mono:wght@400;500;600;700&display=swap";:root{--ink:#12141c;--ink-soft:#2a2e3a;--paper:#f3f4f6;--surface:#fff;--surface-alt:#f8f9fb;--border:#e4e6eb;--border-strong:#d1d5db;--signal:#ff5a1f;--signal-hover:#e14a12;--signal-soft:#fff1ea;--confirm:#17875a;--confirm-soft:#e7f6ef;--danger:#e0342c;--danger-soft:#fdebea;--muted:#6b7280;--muted-2:#9ca3af;--radius-sm:8px;--radius:12px;--radius-lg:20px;--shadow-sm:0 1px 2px #12141c0f;--shadow-md:0 8px 24px #12141c14;--font-display:"Space Grotesk", sans-serif;--font-body:"Inter", sans-serif;--font-mono:"IBM Plex Mono", monospace;--barcode-stripes:repeating-linear-gradient(90deg, var(--ink) 0px, var(--ink) 2px, transparent 2px, transparent 5px, var(--ink) 5px, var(--ink) 6px, transparent 6px, transparent 11px, var(--signal) 11px, var(--signal) 14px, transparent 14px, transparent 18px)}html.dark{--ink:#f3f4f6;--ink-soft:#d1d5db;--paper:#0f1117;--surface:#171922;--surface-alt:#1d2029;--border:#2b2e38;--border-strong:#3a3e4a;--signal-soft:#ff5a1f24;--confirm-soft:#17875a2e;--danger-soft:#e0342c2e;--muted:#9aa0ac;--muted-2:#6b7280;--shadow-sm:0 1px 2px #0006;--shadow-md:0 8px 24px #00000080}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html{-webkit-text-size-adjust:100%}body{background:var(--paper);color:var(--ink);font-family:var(--font-body);overflow-x:hidden}.page-container{max-width:1200px;margin:0 auto;padding:24px 20px 80px}.header-box{margin-bottom:28px;padding-bottom:4px}.header-box h2{font-family:var(--font-display);letter-spacing:.01em;color:var(--ink);font-size:1.4rem;font-weight:700}.header-subtitle{font-family:var(--font-mono);color:var(--muted);margin-top:4px;font-size:.8rem}.header-box:after{content:"";background-image:var(--barcode-stripes);opacity:.9;border-radius:2px;height:8px;margin-top:16px;display:block}.btn-header-new{background:var(--signal);color:#fff;font-family:var(--font-display);letter-spacing:.02em;border-radius:var(--radius);box-shadow:var(--shadow-sm);cursor:pointer;border:none;padding:10px 20px;font-size:.85rem;font-weight:700;transition:background .15s,transform .15s}.btn-header-new:hover{background:var(--signal-hover);transform:translateY(-1px)}.btn-header-new:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn-primary{background:var(--signal);color:#fff;font-family:var(--font-display);letter-spacing:.02em;border-radius:var(--radius);cursor:pointer;border:none;padding:14px 20px;font-size:1rem;font-weight:700;transition:background .15s}.btn-primary:hover{background:var(--signal-hover)}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-preview-secondary{background:var(--surface);color:var(--ink);border:1px solid var(--border-strong);border-radius:var(--radius);cursor:pointer;padding:10px 20px;font-size:.9rem;font-weight:600;transition:background .15s}.btn-preview-secondary:hover{background:var(--surface-alt)}.btn-preview-secondary:disabled{opacity:.5;cursor:not-allowed}.btn-search-dark{background:var(--ink);color:var(--paper);font-family:var(--font-display);letter-spacing:.02em;border-radius:var(--radius);cursor:pointer;border:none;padding:10px 20px;font-size:.9rem;font-weight:700;transition:background .15s}.btn-search-dark:hover{background:var(--ink-soft);color:var(--ink)}.btn-search-dark:disabled{opacity:.5;cursor:not-allowed}.btn-del-badge{background:var(--danger-soft);color:var(--danger);font-family:var(--font-mono);letter-spacing:.05em;cursor:pointer;border:1px solid #0000;border-radius:999px;padding:6px 10px;font-size:.7rem;font-weight:700;transition:all .15s}.btn-del-badge:hover{background:var(--danger);color:#fff}.main-table-wrapper{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);overflow:hidden}.main-table{border-collapse:collapse;width:100%;font-family:var(--font-mono);font-size:.875rem}.table-header-brand{background:var(--ink);color:var(--paper);text-align:center;font-family:var(--font-display);letter-spacing:.08em;text-transform:uppercase;padding:12px 8px;font-size:.7rem}.main-table-row{border-bottom:1px solid var(--border);transition:background .15s}.main-table-row:last-child{border-bottom:none}.main-table-row:hover{background:var(--surface-alt)}.table-row-danger-overlay,.table-row-danger-overlay:hover{background:var(--danger-soft)}.main-table-td{text-align:center;color:var(--ink);padding:14px 8px}.main-table-td-left{text-align:left;font-family:var(--font-body);color:var(--ink);padding:14px 16px}.main-table-msg{text-align:center;color:var(--muted);font-family:var(--font-body);padding:56px 0}.text-muted-no{color:var(--muted-2);text-align:center;font-family:var(--font-mono)}.text-sub-caps{font-family:var(--font-mono);color:var(--muted);letter-spacing:.04em;margin-top:2px;font-size:.7rem}.mobile-card,.mobile-card-danger{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:16px}.mobile-card-danger{border-color:var(--danger);background:var(--danger-soft)}.mobile-card-header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.mobile-card-meta-row{align-items:center;gap:8px;display:flex}.mobile-card-index{font-family:var(--font-mono);color:var(--muted);font-size:.7rem;font-weight:700}.mobile-card-title{font-family:var(--font-display);color:var(--ink);margin-top:2px;font-size:1rem;font-weight:700}.mobile-card-footer{border-top:1px dashed var(--border-strong);justify-content:space-between;align-items:center;margin-top:14px;padding-top:14px;display:flex}.mobile-card-meta-label{font-family:var(--font-mono);letter-spacing:.04em;text-transform:uppercase;color:var(--muted-2);font-size:.65rem}.mobile-card-meta-value{font-family:var(--font-mono);color:var(--ink);font-weight:700}.badge-danger-xs,.badge-danger-sm{background:var(--danger);color:#fff;font-family:var(--font-mono);letter-spacing:.04em;border-radius:4px;font-weight:700;display:inline-block}.badge-danger-xs{padding:2px 6px;font-size:.6rem}.badge-danger-sm{padding:2px 8px;font-size:.65rem}.editable-input{border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface);color:var(--ink);font-family:var(--font-mono);padding:8px;font-size:16px}.editable-input:focus{border-color:var(--signal);box-shadow:0 0 0 3px var(--signal-soft);outline:none}.page-action-row{flex-direction:column;justify-content:flex-end;gap:12px;margin-top:24px;display:flex}@media (width>=640px){.page-action-row{flex-direction:row}}.modal-overlay{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:50;background:#12141c99;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.modal-box{background:var(--surface);border-radius:var(--radius-lg);width:100%;max-width:480px;box-shadow:var(--shadow-md);overflow:hidden}.modal-header{text-align:center;border-bottom:1px solid var(--border);padding:20px 24px}.modal-title-brand{font-family:var(--font-display);color:var(--ink);font-size:1.1rem;font-weight:700}.modal-body{padding:24px}.media-preview-frame{aspect-ratio:1;border-radius:var(--radius);background:var(--ink);width:100%;position:relative;overflow:hidden}.media-preview-frame:after{content:"";background:var(--signal);height:2px;box-shadow:0 0 8px var(--signal);animation:1.8s ease-in-out infinite scan-sweep;position:absolute;left:8%;right:8%}@keyframes scan-sweep{0%,to{top:15%}50%{top:85%}}@media (prefers-reduced-motion:reduce){.media-preview-frame:after{animation:none;top:50%}}.loading-overlay{z-index:60;background:#12141c80;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.loading-box{background:var(--surface);border-radius:var(--radius-lg);text-align:center;box-shadow:var(--shadow-md);padding:32px 40px}.loading-spinner{border:3px solid var(--border);border-top-color:var(--signal);border-radius:50%;width:32px;height:32px;margin:0 auto;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.mobile-only{display:block}.desktop-only{display:none}@media (width>=768px){.mobile-only{display:none}.desktop-only{display:block}}.auth-shell{background:var(--ink);justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex;position:relative;overflow:hidden}.auth-shell:before{content:"";pointer-events:none;background-image:repeating-linear-gradient(90deg,#ff5a1f14 0 2px,#0000 2px 40px);position:absolute;inset:0}.auth-card{background:var(--surface);border-radius:var(--radius-lg);width:100%;max-width:400px;box-shadow:var(--shadow-md);padding:40px 32px;position:relative}.auth-title{font-family:var(--font-display);color:var(--ink);text-align:center;margin-bottom:6px;font-size:1.7rem;font-weight:700}.auth-subtitle{font-family:var(--font-mono);letter-spacing:.04em;color:var(--muted);text-align:center;margin-bottom:28px;font-size:.8rem}.auth-field{margin-bottom:16px}.auth-input{border:1px solid var(--border-strong);border-radius:var(--radius);background:var(--surface-alt);width:100%;color:var(--ink);font-family:var(--font-body);box-sizing:border-box;padding:14px 16px;font-size:16px}.auth-input:focus{border-color:var(--signal);box-shadow:0 0 0 3px var(--signal-soft);background:var(--surface);outline:none}.auth-input:disabled{opacity:.6;cursor:not-allowed}.auth-submit{justify-content:center;align-items:center;gap:8px;width:100%;margin-top:8px;display:flex}.auth-spinner{border:2px solid #fff6;border-top-color:#fff;border-radius:50%;width:18px;height:18px;animation:.8s linear infinite spin}.auth-divider{justify-content:center;align-items:center;margin:24px 0;display:flex;position:relative}.auth-divider:before{content:"";background:var(--border);height:1px;position:absolute;top:50%;left:0;right:0}.auth-divider-text{background:var(--surface);color:var(--muted);font-family:var(--font-mono);letter-spacing:.06em;padding:0 12px;font-size:.7rem;position:relative}.auth-actions-secondary{flex-direction:column;gap:10px;display:flex}.auth-btn-outline,.auth-btn-ghost{border-radius:var(--radius);cursor:pointer;width:100%;padding:12px 16px;font-size:.9rem;font-weight:600;transition:background .15s}.auth-btn-outline:disabled,.auth-btn-ghost:disabled{opacity:.5;cursor:not-allowed}.auth-btn-outline{background:var(--surface);color:var(--signal);border:1px solid var(--signal)}.auth-btn-outline:hover{background:var(--signal-soft)}.auth-btn-ghost{background:var(--surface-alt);color:var(--ink);border:1px solid var(--border-strong)}.auth-btn-ghost:hover{background:var(--border)}.header-box-lg h2{font-size:clamp(1.5rem,5vw,2rem)}.form-section{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:24px}.form-section-title{font-family:var(--font-display);color:var(--ink);border-bottom:1px solid var(--border);margin-bottom:20px;padding-bottom:12px;font-size:1.05rem;font-weight:700}.form-section-columns{grid-template-columns:1fr;gap:24px;display:grid}@media (width>=1024px){.form-section-columns{grid-template-columns:repeat(2,1fr)}}.form-section-columns+.form-section{margin-top:40px}.form-section+.form-actions-row{margin-top:32px}.field-group{margin-bottom:16px}.field-group:last-child{margin-bottom:0}.field-group-row{grid-template-columns:repeat(2,1fr);gap:16px;display:grid}.field-label{font-family:var(--font-body);color:var(--ink);margin-bottom:6px;font-size:.85rem;font-weight:600;display:block}.field-required{color:var(--danger);margin-left:2px}.auth-input.field-readonly{background:var(--surface-alt);color:var(--muted);cursor:not-allowed}.agreement-intro{color:var(--muted);margin-bottom:16px;font-size:.85rem}.agreement-select-all{color:var(--ink);border-bottom:1px solid var(--border);cursor:pointer;align-items:center;gap:12px;margin-bottom:8px;padding-bottom:12px;font-weight:700;display:flex}.agreement-row{border-radius:var(--radius-sm);flex-direction:column;gap:8px;padding:10px;transition:background .15s;display:flex}.agreement-row:hover{background:var(--surface-alt)}@media (width>=640px){.agreement-row{flex-direction:row;justify-content:space-between;align-items:center}}.agreement-check-label{cursor:pointer;color:var(--ink);align-items:center;gap:12px;font-size:.85rem;display:flex}.field-checkbox{width:18px;height:18px;accent-color:var(--signal);border-radius:4px;flex-shrink:0}.agreement-link-pill{font-family:var(--font-mono);letter-spacing:.02em;color:var(--signal);background:var(--signal-soft);white-space:nowrap;border-radius:999px;flex-shrink:0;padding:4px 12px;font-size:.7rem;font-weight:700;text-decoration:none;transition:background .15s,color .15s}.agreement-link-pill:hover{background:var(--signal);color:#fff}.agreement-note{color:var(--muted-2);margin-top:10px;padding-left:10px;font-size:.7rem}.form-actions-row{flex-direction:column;justify-content:center;align-items:stretch;gap:12px;padding-top:8px;padding-bottom:32px;display:flex}.form-actions-row>button{width:100%}@media (width>=640px){.form-actions-row{flex-direction:row;align-items:center}.form-actions-row>button{width:auto;min-width:180px}}.btn-preview-danger{background:var(--surface);color:var(--danger);border:1px solid var(--danger);border-radius:var(--radius);cursor:pointer;padding:10px 20px;font-size:.9rem;font-weight:600;transition:background .15s}.btn-preview-danger:hover{background:var(--danger-soft)}.btn-preview-danger:disabled{opacity:.5;cursor:not-allowed}.success-shell{justify-content:center;align-items:center;min-height:65vh;display:flex}.success-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);width:100%;max-width:460px;box-shadow:var(--shadow-sm);text-align:center;padding:48px 32px}.success-icon{margin-bottom:16px;font-size:3rem}.success-title{font-family:var(--font-display);color:var(--ink);margin-bottom:10px;font-size:1.4rem;font-weight:700}.success-desc{color:var(--muted);margin-bottom:32px;line-height:1.6}.success-card .btn-primary{width:100%}.home-shell{background:var(--paper);min-height:100vh;padding:60px 24px}.home-grid{grid-template-columns:repeat(2,1fr);gap:20px;max-width:960px;margin:0 auto;display:grid}@media (width>=768px){.home-grid{grid-template-columns:repeat(4,1fr)}}.home-menu-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);color:var(--ink);box-shadow:var(--shadow-sm);flex-direction:column;align-items:center;padding:32px 16px;text-decoration:none;transition:transform .15s,box-shadow .15s,border-color .15s;display:flex}.home-menu-card:hover{box-shadow:var(--shadow-md);border-color:var(--signal);transform:translateY(-3px)}.home-menu-card span:first-child{margin-bottom:8px;font-size:2.75rem}.home-menu-card span:last-child{font-family:var(--font-display);text-align:center;font-size:.9rem;font-weight:700}.sub-menu-page-container{max-width:1100px;margin:0 auto;padding:32px 20px 80px}.sub-menu-header{margin-bottom:32px}.sub-menu-header .header-title{font-family:var(--font-display);color:var(--ink);font-size:1.8rem;font-weight:700}.sub-menu-header .header-subtitle{margin-top:6px}.sub-menu-header-line{background-image:var(--barcode-stripes);opacity:.9;border-radius:2px;width:100%;max-width:220px;height:8px;margin-top:18px}.sub-menu-card-active,.sub-menu-card-disabled{text-align:left;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);width:100%;box-shadow:var(--shadow-sm);flex-direction:column;padding:28px;transition:transform .15s,box-shadow .15s,border-color .15s;display:flex}.sub-menu-card-active{cursor:pointer}.sub-menu-card-active:hover{border-color:var(--signal);box-shadow:var(--shadow-md);transform:translateY(-2px)}.sub-menu-card-disabled{cursor:not-allowed;opacity:.6}.sub-menu-card-icon{margin-bottom:12px;font-size:2rem}.sub-menu-card-title{font-family:var(--font-display);color:var(--ink);font-size:1.05rem;font-weight:700}.sub-menu-card-disabled .sub-menu-card-title{color:var(--muted-2)}.sub-menu-card-desc{color:var(--muted);margin-top:10px;font-size:.85rem;line-height:1.5}.sub-menu-card-action{font-family:var(--font-mono);letter-spacing:.04em;color:var(--signal);margin-top:18px;font-size:.75rem;font-weight:700;transition:transform .15s}.sub-menu-card-active:hover .sub-menu-card-action{transform:translate(3px)}.page-container,.sub-menu-page-container,.home-shell{padding-left:max(20px, env(safe-area-inset-left));padding-right:max(20px, env(safe-area-inset-right));padding-bottom:max(80px, env(safe-area-inset-bottom))}.auth-shell{padding-top:max(24px, env(safe-area-inset-top));padding-bottom:max(24px, env(safe-area-inset-bottom))}.loading-overlay,.modal-overlay{padding-bottom:max(16px, env(safe-area-inset-bottom))}@media (pointer:coarse){.btn-header-new,.btn-primary,.btn-preview-secondary,.btn-search-dark,.btn-back-link,.btn-theme-toggle,.btn-logout,.navbar-btn-home,.auth-btn-outline,.auth-btn-ghost{min-height:44px}.btn-del-badge,.file-pill-remove,.btn-file-pdf,.btn-file-attachment{min-width:40px;min-height:40px}.editable-input{min-height:40px}}@media (hover:none){.home-menu-card:hover,.sub-menu-card-active:hover,.main-table-row:hover{box-shadow:var(--shadow-sm);border-color:var(--border);transform:none}.sub-menu-card-active:hover .sub-menu-card-action{transform:none}.btn-header-new:hover,.btn-search-dark:hover{background:var(--signal)}.btn-search-dark:hover{background:var(--ink)}.btn-header-new:active,.btn-primary:active,.btn-search-dark:active{opacity:.85}.btn-preview-secondary:active,.btn-del-badge:active,.file-pill-remove:active,.btn-file-pdf:active,.btn-file-attachment:active{background:var(--surface-alt)}}.header-box h2{font-size:clamp(1.15rem,4vw,1.4rem)}.auth-title{font-size:clamp(1.4rem,6vw,1.7rem)}.sub-menu-header .header-title{font-size:clamp(1.4rem,5vw,1.8rem)}@media (width<=480px){.page-container,.sub-menu-page-container{padding-top:16px}.auth-card{padding:32px 20px}.sub-menu-card-active,.sub-menu-card-disabled{padding:20px}.home-grid{gap:12px}.home-menu-card{padding:24px 12px}.home-menu-card span:first-child{font-size:2.25rem}.modal-body{padding:20px}.loading-box{padding:28px 24px}}@media (width<=640px){.modal-overlay{align-items:flex-end;padding-left:0;padding-right:0}.modal-box{border-radius:var(--radius-lg) var(--radius-lg) 0 0;width:100%;max-width:100%;padding-bottom:env(safe-area-inset-bottom);animation:.25s ease-out sheet-up}.modal-box:before{content:"";background:var(--border-strong);border-radius:999px;width:40px;height:4px;margin:10px auto 0;display:block}}@keyframes sheet-up{0%{transform:translateY(100%)}to{transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.modal-box{animation:none}}.navbar-container{z-index:40;padding-top:12px;padding-bottom:12px;padding-left:max(16px, env(safe-area-inset-left));padding-right:max(16px, env(safe-area-inset-right));background:var(--surface);border-bottom:1px solid var(--border);box-shadow:var(--shadow-sm);justify-content:space-between;align-items:center;gap:12px;display:flex;position:sticky;top:0}.navbar-track-left{flex:auto;align-items:center;gap:12px;min-width:0;display:flex;overflow:hidden}.navbar-track-right{white-space:nowrap;flex-shrink:0;align-items:center;gap:8px;display:flex}.navbar-btn-home{border-radius:var(--radius);background:var(--surface-alt);flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;font-size:1.1rem;text-decoration:none;transition:background .15s;display:flex}.navbar-btn-home:hover{background:var(--signal-soft)}.breadcrumb-rail{align-items:center;gap:6px;min-width:0;display:flex;overflow:hidden}.breadcrumb-node{min-width:0;font-family:var(--font-mono);align-items:center;gap:6px;font-size:.8rem;display:flex}.breadcrumb-link-active{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--muted);text-decoration:none;transition:color .15s;overflow:hidden}.breadcrumb-link-active:hover{color:var(--signal)}.breadcrumb-text-current{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--ink);font-weight:700;overflow:hidden}.breadcrumb-separator{color:var(--border-strong);flex-shrink:0}.btn-theme-toggle{background:var(--surface-alt);border:1px solid var(--border);border-radius:var(--radius);color:var(--ink);cursor:pointer;white-space:nowrap;flex-shrink:0;justify-content:center;align-items:center;padding:8px 14px;font-size:.8rem;font-weight:600;transition:background .15s;display:flex}.btn-theme-toggle:hover{background:var(--signal-soft)}@media (width<=640px){.btn-theme-toggle{padding:8px 10px}.btn-theme-toggle-label{display:none}}.navbar-welcome-text{font-family:var(--font-mono);color:var(--muted);font-size:.8rem;display:none}@media (width>=640px){.navbar-welcome-text{display:inline}}.btn-logout{background:var(--ink);color:var(--paper);border-radius:var(--radius);font-family:var(--font-display);cursor:pointer;white-space:nowrap;border:none;flex-shrink:0;padding:8px 16px;font-size:.8rem;font-weight:700;transition:background .15s}.btn-logout:hover{background:var(--danger);color:#fff}.btn-back-link{color:var(--muted);font-family:var(--font-body);cursor:pointer;background:0 0;border:none;align-items:center;padding:0 0 20px;font-size:.9rem;font-weight:600;transition:color .15s;display:inline-flex}.btn-back-link:hover{color:var(--signal)}.btn-file-action-container{align-items:center;gap:8px;display:flex}.btn-file-pdf,.btn-file-attachment{background:var(--surface-alt);width:32px;height:32px;color:var(--ink);border-radius:999px;justify-content:center;align-items:center;transition:background .15s,color .15s;display:flex}.btn-file-pdf:hover,.btn-file-attachment:hover{background:var(--signal-soft);color:var(--signal)}.preview-inline-row{align-items:center;gap:10px;display:flex}.file-pill-btn{background:var(--signal-soft);color:var(--signal);cursor:pointer;border-radius:999px;flex-shrink:0;padding:8px 16px;font-size:.85rem;font-weight:700;transition:background .15s}.file-pill-btn:hover{background:var(--signal);color:#fff}.file-pill-name{min-width:0;color:var(--muted);white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:.85rem;overflow:hidden}.file-pill-remove{width:28px;height:28px;color:var(--danger);cursor:pointer;background:0 0;border:none;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;transition:background .15s;display:flex}.file-pill-remove:hover{background:var(--danger-soft)}
