/* Asset redesign memakai nama unik tanpa query string agar kompatibel dengan Hostinger. */
:root{--ink:#172033;--muted:#68758b;--line:#e6eaf0;--canvas:#f4f7fb;--white:#fff;--navy:#10243e;--blue:#2764e7;--blue-soft:#eaf1ff;--teal:#0e9384;--amber:#e89418;--purple:#7658d9;--danger:#d64545;--shadow:0 10px 30px rgba(28,45,77,.07)}
*{box-sizing:border-box}html{font-size:15px}body{margin:0;color:var(--ink);font-family:'DM Sans',system-ui,sans-serif}button,input{font:inherit}a{color:inherit;text-decoration:none}svg{display:block;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.app-body{background:var(--canvas);min-height:100vh}.environment-banner{height:32px;background:#f6b81b;color:#212838;display:grid;place-items:center;font-size:.72rem;font-weight:800;letter-spacing:.12em}.app-shell{min-height:100vh;display:flex}.environment-banner+.app-shell{min-height:calc(100vh - 32px)}
.sidebar{position:fixed;inset:0 auto 0 0;width:252px;background:var(--navy);color:#d8e2ef;z-index:30;display:flex;flex-direction:column;padding:26px 18px 20px}.environment-banner~.app-shell .sidebar{top:32px}.brand{display:flex;align-items:center;gap:12px;padding:0 9px 26px;color:#fff}.brand-mark,.story-mark{width:42px;height:42px;border-radius:12px;background:linear-gradient(145deg,#3b75ee,#1e55c9);display:grid;place-items:center;box-shadow:0 9px 20px #0a183655}.brand-mark svg,.story-mark svg{width:25px;stroke:#fff;stroke-width:2}.brand strong{display:block;font:800 1.17rem/1.1 Manrope,sans-serif}.brand small{display:block;color:#8fa5bf;font-size:.75rem;margin-top:3px}.main-nav{flex:1;overflow:auto}.nav-label{text-transform:uppercase;letter-spacing:.13em;color:#69809b;font-size:.65rem;font-weight:800;margin:18px 12px 8px}.nav-item{height:44px;border-radius:10px;display:flex;align-items:center;gap:12px;padding:0 12px;margin:3px 0;color:#aebdd0;font-weight:600;font-size:.87rem;transition:.2s}.nav-item svg{width:20px;max-height:20px;fill:currentColor;stroke:none;opacity:.8}.nav-item:hover{background:#18314f;color:#fff}.nav-item.active{background:linear-gradient(90deg,#2c65de,#3473ed);color:#fff;box-shadow:0 8px 18px #071a3638}.nav-item small{margin-left:auto;font-size:.6rem;text-transform:uppercase;background:#263c56;color:#8195ac;padding:3px 6px;border-radius:10px}.nav-item.disabled{opacity:.56;cursor:not-allowed}.sidebar-foot{border-top:1px solid #243c57;padding:18px 10px 2px;display:flex;gap:10px;align-items:center}.status-dot{width:9px;height:9px;border-radius:50%;background:#26d69b;box-shadow:0 0 0 5px #26d69b20}.sidebar-foot strong,.sidebar-foot small{display:block}.sidebar-foot strong{font-size:.78rem;color:#dce6f1}.sidebar-foot small{font-size:.68rem;color:#7188a2;margin-top:2px}
.workspace{margin-left:252px;min-width:0;flex:1}.topbar{height:82px;background:#fff;border-bottom:1px solid var(--line);padding:0 34px;display:flex;align-items:center;gap:18px;position:sticky;top:0;z-index:20}.environment-banner~.app-shell .topbar{top:32px}.menu-button{display:none}.topbar-title p{margin:0 0 2px;color:#8a96a8;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em}.topbar-title h1{font:800 1.38rem/1.2 Manrope,sans-serif;margin:0}.topbar-actions{margin-left:auto;display:flex;align-items:center;gap:20px}.health-pill{display:flex;align-items:center;gap:8px;color:#4e5e72;font-size:.75rem;background:#f6f8fb;border:1px solid var(--line);padding:7px 10px;border-radius:999px}.health-pill span{width:7px;height:7px;background:#14b886;border-radius:50%;box-shadow:0 0 0 3px #14b8861c}.user-menu{position:relative}.user-menu summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:10px}.user-menu summary::-webkit-details-marker{display:none}.avatar{width:36px;height:36px;border-radius:11px;background:#e4edff;color:#255ccf;display:grid;place-items:center;font-weight:800}.user-copy strong,.user-copy small{display:block;max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-copy strong{font-size:.78rem}.user-copy small{font-size:.68rem;color:#8591a2;margin-top:2px}.user-menu summary>svg{width:16px;color:#7c899a}.user-popover{position:absolute;right:0;top:49px;width:230px;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:0 16px 45px #1720331c;padding:15px}.user-popover p{font-size:.74rem;color:var(--muted);line-height:1.5;margin:0 0 12px}.logout-button{width:100%;border:0;border-radius:8px;background:#fff0f0;color:#b43434;padding:9px;font-weight:700;cursor:pointer}.content{padding:28px 34px 48px;max-width:1600px;margin:auto}.flash{padding:12px 14px;border-radius:10px;font-size:.8rem;margin-bottom:18px}.flash.success{background:#e9f9f3;color:#11775c;border:1px solid #c8eee0}.flash.error{background:#fff0f0;color:#ae3333;border:1px solid #f5cccc}
.welcome-strip{background:linear-gradient(105deg,#15345b,#1e4d83);color:#fff;border-radius:16px;padding:24px 28px;display:flex;align-items:center;justify-content:space-between;box-shadow:var(--shadow);position:relative;overflow:hidden}.welcome-strip:after{content:"";position:absolute;width:260px;height:260px;border:52px solid #ffffff0a;border-radius:50%;right:-70px;top:-100px}.welcome-strip p{margin:0 0 4px;color:#a9c3e3;font-size:.75rem}.welcome-strip h2{font:800 1.45rem Manrope,sans-serif;margin:0 0 5px}.welcome-strip span{font-size:.78rem;color:#bed0e5}.welcome-meta{text-align:right;position:relative;z-index:1}.welcome-meta span,.welcome-meta strong{display:block}.welcome-meta strong{margin-top:7px;font-size:.76rem;background:#ffffff17;border:1px solid #ffffff18;border-radius:999px;padding:7px 12px}.summary-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin:20px 0}.summary-card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:19px;display:flex;align-items:center;gap:16px;box-shadow:0 4px 15px #203b6410}.summary-icon{width:45px;height:45px;border-radius:12px;display:grid;place-items:center}.summary-icon span{width:18px;height:18px;border:5px solid currentColor;border-radius:5px;transform:rotate(45deg)}.summary-card.blue .summary-icon{background:#e9f0ff;color:var(--blue)}.summary-card.teal .summary-icon{background:#e5f8f4;color:var(--teal)}.summary-card.amber .summary-icon{background:#fff4df;color:var(--amber)}.summary-card.purple .summary-icon{background:#f0ecff;color:var(--purple)}.summary-card p,.summary-card strong,.summary-card small{display:block}.summary-card p{margin:0;color:#69778a;font-size:.73rem;font-weight:600}.summary-card strong{font:800 1.58rem Manrope,sans-serif;margin:2px 0}.summary-card small{color:#9aa4b2;font-size:.65rem}.dashboard-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.panel{background:#fff;border:1px solid var(--line);border-radius:14px;padding:20px;box-shadow:0 4px 18px #263d6209;min-width:0}.span-2{grid-column:span 2}.span-3{grid-column:span 3}.panel-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:18px}.panel-head p{margin:0 0 3px;color:#97a2b1;font-size:.66rem;text-transform:uppercase;letter-spacing:.08em;font-weight:700}.panel-head h3{margin:0;font:800 1rem Manrope,sans-serif}.panel-head a{color:var(--blue);font-size:.72rem;font-weight:700}.company-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px 22px}.company-stat{display:grid;grid-template-columns:40px 1fr auto;align-items:center;gap:10px;padding:8px 0}.company-code{height:37px;border-radius:9px;display:grid;place-items:center;font-weight:800;font-size:.68rem}.company-code.ac,.sector-badge.ac{background:#e8f1ff;color:#2864d9}.company-code.besi,.sector-badge.besi{background:#fff0df;color:#b96b11}.company-copy strong,.company-copy small{display:block}.company-copy strong{font-size:.76rem}.company-copy small{font-size:.64rem;color:#9aa4b2;margin-top:1px}.company-stat>span{font:800 .9rem Manrope,sans-serif}.progress{height:3px;background:#eef1f5;border-radius:4px;margin-top:6px;overflow:hidden}.progress i{display:block;height:100%;background:#4e7fe7;border-radius:4px}.status-list>div{display:flex;align-items:center;gap:9px;border-bottom:1px solid #f0f2f5;padding:10px 2px}.status-list p{margin:0;flex:1;text-transform:capitalize;font-size:.76rem;color:#5f6e80}.status-list strong{font-size:.8rem}.status-bullet{width:8px;height:8px;border-radius:50%;background:#8a96a8}.status-bullet.available{background:#14b886}.status-bullet.unavailable{background:#e35555}.status-bullet.maintenance{background:#e5a128}.secondary-button{display:inline-flex;align-items:center;justify-content:center;border:1px solid #dce3ed;color:#355574;padding:9px 13px;border-radius:9px;font-weight:700;font-size:.73rem}.secondary-button.full{width:100%;margin-top:15px}.compact-table{overflow:auto}.table-row{min-width:620px;display:grid;grid-template-columns:1.6fr .9fr 1fr .6fr;align-items:center;gap:12px;padding:11px 4px;border-top:1px solid #edf0f4;font-size:.72rem}.table-heading{border:0;color:#9aa4b2;text-transform:uppercase;letter-spacing:.05em;font-size:.61rem;font-weight:700;padding-top:0}.person-cell{display:flex;align-items:center;gap:9px}.person-cell i{width:31px;height:31px;border-radius:9px;background:#edf2fc;color:#3f67ad;display:grid;place-items:center;font-style:normal;font-weight:800;flex:0 0 auto}.person-cell b{font-size:.72rem}.person-cell small{display:block;color:#9aa4b2;font-weight:500;font-size:.62rem;margin-top:2px}.tag{display:inline-flex;border-radius:999px;padding:4px 8px;font-style:normal;font-size:.63rem;font-weight:700;text-transform:capitalize;white-space:nowrap}.tag.success{background:#e5f8f0;color:#148263}.tag.danger{background:#ffebeb;color:#bb3e3e}.tag.neutral{background:#edf2f8;color:#50637a}.warehouse-list>div{display:flex;align-items:center;gap:10px;padding:11px 0;border-bottom:1px solid #edf0f4}.warehouse-icon{width:38px;height:38px;border-radius:10px;background:#edf3ff;color:#3165cb;display:grid;place-items:center;font-size:.65rem;font-weight:800}.warehouse-list p{margin:0;flex:1}.warehouse-list strong,.warehouse-list small{display:block}.warehouse-list strong{font-size:.74rem}.warehouse-list small{font-size:.62rem;color:#9ba5b3;margin-top:3px}.project-cards{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.project-cards article{border:1px solid #e9edf2;border-radius:12px;padding:14px;display:flex;align-items:center;gap:12px}.project-icon{width:40px;height:40px;border-radius:10px;background:#edf3ff;color:#3068d6;display:grid;place-items:center}.project-icon svg{width:20px;fill:currentColor;stroke:none}.project-cards article>div:nth-child(2){min-width:0;flex:1}.project-cards small,.project-cards strong,.project-cards p{display:block}.project-cards small{font-size:.58rem;color:#96a0af}.project-cards strong{font-size:.76rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin:2px 0}.project-cards p{font-size:.62rem;color:#7c899a;margin:0}
.page-intro{display:flex;align-items:center;justify-content:space-between;background:linear-gradient(110deg,#fff,#f8fbff);border:1px solid var(--line);border-radius:14px;padding:22px 24px;margin-bottom:18px}.section-chip{font-size:.58rem;letter-spacing:.1em;font-weight:800;color:#3265cf;background:#eaf1ff;padding:5px 8px;border-radius:999px}.page-intro h2{font:800 1.25rem Manrope,sans-serif;margin:10px 0 4px}.page-intro p{margin:0;max-width:720px;color:#738095;font-size:.76rem;line-height:1.55}.intro-stat{text-align:center;min-width:110px;border-left:1px solid var(--line);padding-left:22px}.intro-stat strong,.intro-stat span{display:block}.intro-stat strong{font:800 1.55rem Manrope,sans-serif;color:#2c60ce}.intro-stat span{font-size:.65rem;color:#8b96a7;margin-top:2px}.data-panel{padding:0;overflow:hidden}.data-toolbar{padding:15px 18px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between}.search-form{height:36px;width:min(420px,70%);display:flex;align-items:center;border:1px solid #dfe5ed;border-radius:9px;padding:0 10px;background:#fafbfd}.search-form svg{width:17px;color:#8b97a8}.search-form input{border:0;outline:0;background:transparent;padding:0 9px;flex:1;font-size:.74rem}.search-form a{color:#2764e7;font-size:.68rem;font-weight:700}.data-hint{font-size:.68rem;color:#8c98a8}.data-table-wrap{overflow:auto}.data-table{width:100%;border-collapse:collapse;min-width:760px}.data-table th{text-align:left;background:#f8fafc;color:#7c899a;text-transform:uppercase;letter-spacing:.055em;font-size:.6rem;padding:12px 18px;border-bottom:1px solid var(--line)}.data-table td{padding:13px 18px;border-bottom:1px solid #edf0f4;font-size:.72rem;color:#4f5e71}.data-table td>strong{color:#26374c}.cell-subtitle{display:block;color:#9aa4b2;margin-top:3px;font-size:.61rem}.sync-state{display:flex;align-items:center;gap:6px;text-transform:capitalize}.sync-state i{width:7px;height:7px;background:#14b886;border-radius:50%}.pager{display:flex;justify-content:center;align-items:center;gap:18px;padding:15px;font-size:.7rem}.pager a{color:#2764e7;font-weight:700}.pager span{color:#7e8a9a}.pager .disabled{color:#b9c0ca}.company-master-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}.entity-card{background:#fff;border:1px solid var(--line);border-radius:13px;padding:17px;box-shadow:0 4px 14px #203b6408}.entity-head{display:flex;align-items:center;justify-content:space-between}.entity-card .company-code{width:42px}.entity-card h3{font:800 .9rem Manrope,sans-serif;margin:15px 0 3px}.entity-card p{font-size:.7rem;color:#6d7b8e;margin:0}.entity-card>small{display:block;color:#a0a9b7;font-size:.58rem;margin-top:13px}.spaced{margin-top:18px}.sector-badge{padding:5px 8px;border-radius:7px;font-size:.64rem;font-weight:800}.project-list-page article{display:grid;grid-template-columns:minmax(230px,1.2fr) minmax(260px,1fr) auto;gap:20px;align-items:center;padding:16px 20px;border-bottom:1px solid var(--line)}.project-main{display:flex;align-items:center;gap:12px}.project-main h3{font:800 .8rem Manrope,sans-serif;margin:2px 0}.project-main small{font-size:.6rem;color:#3f6fd0;font-weight:800}.project-main p{font-size:.62rem;color:#919baa;margin:0}.package-list{display:flex;flex-wrap:wrap;gap:6px}.package-list span{background:#f4f7fb;border:1px solid #e6eaf0;border-radius:8px;padding:6px 8px;font-size:.6rem;color:#788698}.package-list b{display:block;color:#42546b;font-size:.62rem;margin-bottom:2px}.empty-state{text-align:center;color:#9ba5b2;font-size:.73rem;padding:24px}
.login-body{min-height:100vh;background:#edf3f8}.login-shell{min-height:100vh;display:grid;grid-template-columns:minmax(420px,46%) 1fr}.login-story{background:linear-gradient(145deg,#102a4a 0%,#153e69 65%,#0f5b69 130%);color:#fff;padding:44px 8vw 34px 5vw;display:flex;flex-direction:column;position:relative;overflow:hidden}.login-story:before,.login-story:after{content:"";position:absolute;border:1px solid #ffffff0e;border-radius:50%}.login-story:before{width:430px;height:430px;right:-240px;top:90px;box-shadow:0 0 0 70px #ffffff08,0 0 0 140px #ffffff05}.login-story:after{width:240px;height:240px;left:-160px;bottom:-100px}.story-top{display:flex;align-items:center;gap:13px;position:relative;z-index:1}.story-top strong,.story-top small{display:block}.story-top strong{font:800 .86rem Manrope,sans-serif;letter-spacing:.1em}.story-top small{font-size:.64rem;color:#88a6c4;margin-top:3px}.story-copy{margin:auto 0;max-width:540px;position:relative;z-index:1}.local-chip{display:inline-flex;align-items:center;gap:8px;border:1px solid #ffffff20;background:#ffffff0d;border-radius:999px;padding:7px 11px;font-size:.67rem;color:#bdd4ea}.local-chip i{width:7px;height:7px;background:#35d6a4;border-radius:50%;box-shadow:0 0 0 4px #35d6a422}.story-copy h1{font:800 clamp(2.3rem,4.2vw,4rem)/1.08 Manrope,sans-serif;letter-spacing:-.04em;margin:28px 0 18px}.story-copy h1 em{font-style:normal;color:#75a8ff}.story-copy>p{color:#abc1d8;font-size:.9rem;line-height:1.7;max-width:480px}.story-metrics{display:flex;gap:42px;margin-top:40px}.story-metrics strong,.story-metrics span{display:block}.story-metrics strong{font:800 1.28rem Manrope,sans-serif}.story-metrics span{font-size:.64rem;color:#8ca9c5;margin-top:4px}.story-foot{text-transform:uppercase;letter-spacing:.19em;font-size:.57rem;color:#6f8eaa;margin:0;position:relative;z-index:1}.login-panel{background:#f7f9fc;display:flex;align-items:center;justify-content:center;flex-direction:column;padding:32px;position:relative}.login-card{width:min(430px,100%)}.mobile-brand{display:none}.login-kicker{color:#2b66db;text-transform:uppercase;letter-spacing:.12em;font-size:.65rem;font-weight:800;margin:0 0 8px}.login-card h2{font:800 2rem Manrope,sans-serif;margin:0 0 8px;letter-spacing:-.03em}.login-subtitle{color:#7a8798;font-size:.79rem;line-height:1.6;margin:0 0 26px}.login-form label{display:block;font-size:.72rem;font-weight:700;margin:0 0 7px}.label-row{display:flex;justify-content:space-between;margin-top:18px}.label-row label{margin:0}.label-row span{font-size:.63rem;color:#8e99a8}.input-wrap{height:48px;background:#fff;border:1px solid #dce3eb;border-radius:10px;display:flex;align-items:center;padding:0 13px;transition:.2s}.input-wrap:focus-within{border-color:#4d7fe8;box-shadow:0 0 0 3px #3c72e715}.input-wrap>svg{width:18px;color:#8a97a8;fill:currentColor;stroke:none}.input-wrap input{border:0;outline:0;min-width:0;flex:1;padding:0 11px;background:transparent;font-size:.8rem;color:#27364a}.reveal-button{border:0;background:transparent;color:#8693a5;cursor:pointer;padding:5px}.reveal-button svg{width:18px;fill:currentColor;stroke:none}.primary-button{border:0;width:100%;height:49px;border-radius:10px;background:linear-gradient(90deg,#275fd5,#3576ec);color:#fff;margin-top:24px;display:flex;align-items:center;justify-content:center;gap:12px;font-weight:800;font-size:.8rem;cursor:pointer;box-shadow:0 11px 22px #2764e72d;transition:.2s}.primary-button:hover{transform:translateY(-1px);box-shadow:0 14px 28px #2764e73b}.primary-button svg{width:18px}.login-note{display:flex;gap:10px;margin-top:24px;padding:13px;background:#edf3fb;border-radius:10px;color:#657489;font-size:.67rem;line-height:1.5}.login-note svg{width:20px;min-width:20px;color:#3371df;fill:currentColor;stroke:none}.login-copyright{position:absolute;bottom:23px;color:#a2aab5;font-size:.62rem}
.icon-button{border:0;background:transparent;padding:7px}.icon-button svg{width:22px}.sidebar-backdrop{display:none}
.form-page{max-width:1180px;margin:0 auto}.form-hero{display:flex;align-items:center;justify-content:space-between;gap:28px;padding:25px 28px;margin-bottom:18px;border:1px solid #dfe6ef;border-radius:16px;background:linear-gradient(120deg,#fff 0%,#f8fbff 60%,#eef5ff 100%);box-shadow:0 7px 24px rgba(32,61,98,.05)}.form-hero h2{margin:11px 0 6px;font:800 1.35rem Manrope,sans-serif;letter-spacing:-.02em}.form-hero p{max-width:690px;margin:0;color:#6f7d90;font-size:.76rem;line-height:1.6}.form-hero-badge{display:flex;align-items:center;gap:12px;min-width:180px;padding:12px 15px;border:1px solid #dfe7f2;border-radius:12px;background:#fff}.form-hero-badge>span{width:38px;height:38px;display:grid;place-items:center;border-radius:10px;background:#eaf1ff;color:#2b63d5;font:800 .72rem Manrope,sans-serif}.form-hero-badge strong,.form-hero-badge small{display:block}.form-hero-badge strong{font-size:.72rem}.form-hero-badge small{margin-top:3px;color:#929dad;font-size:.61rem}.form-alert{display:flex;align-items:flex-start;gap:12px;margin-bottom:18px;padding:14px 16px;border:1px solid #f2c5c5;border-radius:12px;background:#fff4f4;color:#9c3232}.form-alert-icon{width:25px;height:25px;display:grid;place-items:center;flex:0 0 auto;border-radius:50%;background:#d94d4d;color:#fff;font-weight:900}.form-alert strong{display:block;font-size:.78rem}.form-alert p{margin:3px 0 0;font-size:.69rem;line-height:1.45}.asset-form{display:grid;gap:16px}.form-section{padding:0 25px 25px;border:1px solid #e1e7ef;border-radius:15px;background:#fff;box-shadow:0 5px 18px rgba(31,55,89,.045)}.form-section-head{min-height:79px;display:flex;align-items:center;gap:13px;margin-bottom:20px;border-bottom:1px solid #edf0f4}.form-section-icon{width:39px;height:39px;display:grid;place-items:center;flex:0 0 auto;border-radius:10px;background:#eaf1ff;color:#2f65d5}.form-section-icon.teal{background:#e7f8f4;color:#108c7b}.form-section-icon.amber{background:#fff3df;color:#c47a16}.form-section-icon.purple{background:#f1edff;color:#7358cf}.form-section-icon svg{width:20px}.form-section-head h3{margin:0 0 3px;font:800 .9rem Manrope,sans-serif}.form-section-head p{margin:0;color:#8b96a6;font-size:.66rem}.form-section-number{margin-left:auto;color:#c4ccd7;font:800 .66rem Manrope,sans-serif;letter-spacing:.08em}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.form-grid-four{grid-template-columns:repeat(4,minmax(0,1fr))}.form-grid-three{grid-template-columns:repeat(3,minmax(0,1fr))}.form-field label{display:block;margin:0 0 7px;color:#34445a;font-size:.7rem;font-weight:800}.form-field label span,.form-required-note span{color:#d84949}.form-control{width:100%;height:46px;padding:0 13px;border:1px solid #d9e1eb;border-radius:9px;outline:0;background:#fbfcfe;color:#27374b;font-size:.75rem;transition:border-color .18s,box-shadow .18s,background .18s}.form-control::placeholder{color:#adb6c2}.form-control:hover{border-color:#bbc8d8;background:#fff}.form-control:focus{border-color:#3970df;background:#fff;box-shadow:0 0 0 3px rgba(57,112,223,.12)}select.form-control{appearance:none;padding-right:38px;cursor:pointer}.select-wrap{position:relative}.select-wrap:after{content:"";position:absolute;right:14px;top:50%;width:7px;height:7px;border-right:1.7px solid #728197;border-bottom:1.7px solid #728197;transform:translateY(-70%) rotate(45deg);pointer-events:none}.form-field>small{display:block;margin-top:6px;color:#98a2b0;font-size:.61rem;line-height:1.4}.form-field>em{display:block;margin-top:5px;color:#c53c3c;font-size:.62rem;font-style:normal}.form-control.is-invalid{border-color:#e17a7a;background:#fffafa}.input-affix{position:relative}.input-affix>span{position:absolute;left:13px;top:50%;z-index:1;transform:translateY(-50%);color:#5d6e82;font-size:.69rem;font-weight:800}.input-affix .form-control{padding-left:39px}.option-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.option-card{position:relative;display:flex;align-items:flex-start;gap:12px;padding:16px;border:1px solid #dfe5ed;border-radius:11px;background:#fafbfd;cursor:pointer;transition:.18s}.option-card:hover{border-color:#b9c9df;background:#fff}.option-card:has(input:checked){border-color:#8eb0ef;background:#f5f8ff;box-shadow:0 0 0 2px rgba(49,103,216,.06)}.option-card input{position:absolute;opacity:0;pointer-events:none}.option-check{width:22px;height:22px;display:grid;place-items:center;flex:0 0 auto;border:1.5px solid #bdc7d4;border-radius:6px;background:#fff;color:transparent;transition:.18s}.option-check svg{width:15px;stroke-width:2.5}.option-card input:checked+.option-check{border-color:#3268d8;background:#3268d8;color:#fff}.option-card strong,.option-card small{display:block}.option-card strong{color:#34445a;font-size:.72rem}.option-card small{margin-top:4px;color:#8b96a6;font-size:.62rem;line-height:1.45}.form-description{margin-top:20px}.form-description textarea{height:auto;min-height:104px;padding-top:12px;resize:vertical;line-height:1.55}.form-actions{position:sticky;bottom:14px;z-index:10;display:flex;align-items:center;justify-content:flex-end;gap:10px;padding:13px 15px;border:1px solid #dfe5ed;border-radius:13px;background:rgba(255,255,255,.96);box-shadow:0 12px 35px rgba(23,42,69,.12);backdrop-filter:blur(10px)}.form-required-note{margin-right:auto;color:#8d98a8;font-size:.64rem}.form-cancel-button,.form-submit-button{height:43px;display:inline-flex;align-items:center;justify-content:center;border-radius:9px;font-weight:800;font-size:.72rem}.form-cancel-button{padding:0 19px;border:1px solid #d8e0e9;background:#fff;color:#5d6c7f}.form-cancel-button:hover{background:#f5f7fa}.form-submit-button{gap:9px;padding:0 21px;border:0;background:linear-gradient(100deg,#255fcf,#3476e9);color:#fff;box-shadow:0 8px 18px rgba(39,100,231,.23);cursor:pointer;transition:.18s}.form-submit-button:hover{transform:translateY(-1px);box-shadow:0 11px 23px rgba(39,100,231,.3)}.form-submit-button svg{width:17px}
@media(max-width:1150px){.summary-grid{grid-template-columns:repeat(2,1fr)}.company-master-grid{grid-template-columns:repeat(3,1fr)}.dashboard-grid{grid-template-columns:1fr 1fr}.span-3{grid-column:span 2}.project-list-page article{grid-template-columns:1fr auto}.package-list{grid-column:1/-1}.login-story{padding-left:4vw}.story-copy h1{font-size:2.7rem}}
@media(max-width:1050px){.form-grid-four{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:850px){.sidebar{transform:translateX(-100%);transition:.25s}.sidebar.open{transform:translateX(0)}.workspace{margin-left:0}.menu-button{display:block}.sidebar-backdrop{position:fixed;inset:0;background:#10243e88;z-index:25}.sidebar-backdrop.visible{display:block}.topbar{padding:0 18px}.content{padding:22px 18px 40px}.health-pill{display:none}.login-shell{grid-template-columns:1fr}.login-story{display:none}.login-panel{min-height:100vh}.mobile-brand{display:flex;align-items:center;gap:10px;margin-bottom:42px}.mobile-brand .story-mark{width:38px;height:38px}.company-master-grid{grid-template-columns:repeat(2,1fr)}.form-hero-badge{display:none}}
@media(max-width:720px){.form-hero{padding:20px}.form-hero h2{font-size:1.15rem}.form-section{padding:0 17px 19px}.form-section-head{min-height:72px}.form-section-head p,.form-section-number{display:none}.form-grid,.form-grid-four,.form-grid-three,.option-grid{grid-template-columns:1fr;gap:15px}.form-actions{bottom:8px;flex-wrap:wrap}.form-required-note{width:100%;margin:0}.form-cancel-button{flex:1}.form-submit-button{flex:2;padding:0 12px}}
@media(max-width:620px){.user-copy{display:none}.summary-grid,.dashboard-grid{grid-template-columns:1fr}.span-2,.span-3{grid-column:span 1}.company-grid,.project-cards{grid-template-columns:1fr}.welcome-strip{align-items:flex-start}.welcome-meta{display:none}.page-intro{align-items:flex-start}.intro-stat{display:none}.company-master-grid{grid-template-columns:1fr}.topbar-title p{display:none}.topbar-title h1{font-size:1.05rem}.login-panel{padding:26px 20px}.login-card h2{font-size:1.65rem}.login-copyright{position:static;margin-top:45px}.data-toolbar{align-items:flex-start;gap:12px;flex-direction:column}.search-form{width:100%}}
.breadcrumb{display:flex;align-items:center;gap:8px;margin-bottom:12px;color:#8995a6;font-size:.68rem}.breadcrumb a{color:#3168d7;font-weight:700}.breadcrumb strong{color:#55657a}.page-header-card{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px 25px;margin-bottom:16px;border:1px solid var(--line);border-radius:15px;background:var(--white);box-shadow:var(--shadow)}.page-header-card h2{margin:10px 0 5px;font:800 1.25rem Manrope,sans-serif}.page-header-card p{margin:0;color:var(--muted);font-size:.74rem}.field-label-row{display:flex;align-items:center;justify-content:space-between;gap:10px}.field-label-row a,.text-button{padding:0;border:0;background:transparent;color:var(--blue);font-size:.62rem;font-weight:800;cursor:pointer}.form-field label small{color:#9aa5b4;font-weight:600}.tracking-choice{margin:22px 0 0;padding:0;border:0}.tracking-choice legend{margin-bottom:8px;color:#34445a;font-size:.7rem;font-weight:800}.tracking-choice legend span{color:#d84949}.tracking-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px}.tracking-card{position:relative;display:flex;align-items:flex-start;gap:12px;padding:16px;border:1px solid #dfe5ed;border-radius:11px;background:#fafbfd;cursor:pointer}.tracking-card input{position:absolute;opacity:0}.tracking-radio{width:19px;height:19px;flex:0 0 auto;border:2px solid #b8c3d1;border-radius:50%;background:#fff;box-shadow:inset 0 0 0 4px #fff}.tracking-card:has(input:checked){border-color:#7ea6ef;background:#f4f8ff}.tracking-card input:checked+.tracking-radio{border-color:#3268d8;background:#3268d8}.tracking-card strong,.tracking-card small{display:block}.tracking-card strong{font-size:.73rem}.tracking-card small{margin-top:4px;color:#8793a4;font-size:.62rem;line-height:1.45}.short-field{max-width:280px;margin-top:20px}.placement-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.placement-card{min-height:112px;padding:16px;border:1px solid #e0e6ee;border-radius:11px;background:#fafbfd}.placement-card>span,.placement-card>strong,.placement-card>small{display:block}.placement-card>span{color:#8a96a7;font-size:.62rem;font-weight:700}.placement-card>strong{margin:10px 0 6px;font:800 1rem Manrope,sans-serif;color:#273b56}.placement-card>small{color:#8f9aaa;font-size:.6rem;line-height:1.4}.code-preview{background:#f5f8ff;border-color:#d7e2f6}.code-preview>strong{color:#2d65d5}.sector-choice{display:flex;gap:7px;margin:9px 0}.sector-choice label{cursor:pointer}.sector-choice input{position:absolute;opacity:0}.sector-choice strong{display:block;padding:7px 13px;border:1px solid #d6dee9;border-radius:8px;background:#fff;font-size:.7rem}.sector-choice label:has(input:checked) strong{border-color:#3268d8;background:#3268d8;color:#fff}.form-accordion{border:1px solid var(--line);border-radius:14px;background:var(--white);box-shadow:0 5px 18px rgba(31,55,89,.04)}.form-accordion summary{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:17px 22px;cursor:pointer;list-style:none}.form-accordion summary::-webkit-details-marker{display:none}.form-accordion summary strong,.form-accordion summary small{display:block}.form-accordion summary strong{font-size:.78rem}.form-accordion summary small{margin-top:3px;color:#929dad;font-size:.62rem}.form-accordion summary em{padding:5px 8px;border-radius:999px;background:#f1f4f8;color:#758398;font-size:.58rem;font-style:normal;font-weight:800}.form-accordion-body{padding:4px 22px 22px;border-top:1px solid var(--line)}.form-accordion-body.form-grid{padding-top:20px}.switch-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.switch-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px;border:1px solid #e2e7ee;border-radius:10px;background:#fafbfd;cursor:pointer}.switch-row strong,.switch-row small{display:block}.switch-row strong{font-size:.69rem}.switch-row small{margin-top:3px;color:#929dad;font-size:.59rem}.switch-row input{position:absolute;opacity:0}.switch-row i{position:relative;width:38px;height:22px;flex:0 0 auto;border-radius:999px;background:#c8d0da;transition:.2s}.switch-row i:after{content:"";position:absolute;left:3px;top:3px;width:16px;height:16px;border-radius:50%;background:#fff;transition:.2s}.switch-row input:checked+i{background:#3268d8}.switch-row input:checked+i:after{transform:translateX(16px)}.confirmation-modal{width:min(440px,calc(100% - 32px));padding:25px;border:0;border-radius:16px;color:var(--ink);background:var(--white);box-shadow:0 30px 80px rgba(13,31,56,.3)}.confirmation-modal::backdrop{background:rgba(12,28,49,.6);backdrop-filter:blur(3px)}.confirmation-modal h3{text-align:center;margin:12px 0 6px;font:800 1.05rem Manrope,sans-serif}.confirmation-modal>p{text-align:center;color:var(--muted);font-size:.7rem}.modal-icon{width:42px;height:42px;margin:auto;display:grid;place-items:center;border-radius:50%;background:#e8f7f1;color:#138061;font-weight:900}.confirmation-modal dl{margin:18px 0;padding:4px 15px;border:1px solid var(--line);border-radius:11px;background:var(--canvas)}.confirmation-modal dl div{display:flex;justify-content:space-between;padding:11px 0;border-bottom:1px solid var(--line);font-size:.7rem}.confirmation-modal dl div:last-child{border:0}.confirmation-modal dt{color:var(--muted)}.confirmation-modal dd{margin:0;font-weight:800}.modal-note{padding:10px;border-radius:8px;background:#fff7e8;color:#9a681c!important}.modal-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:18px}.theme-toggle{width:36px;height:36px;display:grid;place-items:center;border:1px solid var(--line);border-radius:10px;background:var(--white);color:#627188;cursor:pointer}.theme-toggle svg{width:18px}
html[data-theme="dark"]{--ink:#e7edf6;--muted:#9daabd;--line:#29394d;--canvas:#0e1724;--white:#162235;--navy:#0a1422;--blue-soft:#1b3154;--shadow:0 10px 30px rgba(0,0,0,.2)}html[data-theme="dark"] .topbar,html[data-theme="dark"] .panel,html[data-theme="dark"] .form-section,html[data-theme="dark"] .page-header-card,html[data-theme="dark"] .form-accordion,html[data-theme="dark"] .form-actions{background:#162235;color:var(--ink)}html[data-theme="dark"] .form-control,html[data-theme="dark"] .tracking-card,html[data-theme="dark"] .placement-card,html[data-theme="dark"] .switch-row,html[data-theme="dark"] .search-form{background:#101b2b;color:var(--ink);border-color:#314258}html[data-theme="dark"] .form-control:focus{background:#101b2b}html[data-theme="dark"] .health-pill{background:#101b2b;border-color:#2b3c51}html[data-theme="dark"] .tracking-choice legend,html[data-theme="dark"] .form-field label,html[data-theme="dark"] .placement-card>strong{color:var(--ink)}
@media(max-width:850px){.placement-grid{grid-template-columns:1fr 1fr}.code-preview{grid-column:1/-1}.page-header-card{align-items:flex-start}}
@media(max-width:620px){.page-header-card{padding:18px;flex-direction:column}.tracking-grid,.placement-grid,.switch-grid{grid-template-columns:1fr}.code-preview{grid-column:auto}.form-accordion-body.form-grid{grid-template-columns:1fr}.modal-actions{flex-direction:column-reverse}.modal-actions>*{width:100%}}
.header-actions{display:flex;align-items:center;gap:9px;flex:0 0 auto}.success-screen{display:flex;align-items:center;gap:13px;margin-bottom:16px;padding:15px 18px;border:1px solid #bde8d7;border-radius:13px;background:#effaf6}.success-screen>span{width:31px;height:31px;display:grid;place-items:center;border-radius:50%;background:#168565;color:#fff;font-weight:900}.success-screen>div:nth-child(2){flex:1}.success-screen strong{font-size:.76rem;color:#176c55}.success-screen p{margin:3px 0 0;color:#538171;font-size:.65rem}.stat-row{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:15px}.stat-row article{padding:15px 17px;border:1px solid var(--line);border-radius:12px;background:var(--white)}.stat-row span,.stat-row strong{display:block}.stat-row span{color:var(--muted);font-size:.62rem}.stat-row strong{margin-top:5px;font:800 1.22rem Manrope,sans-serif}.stat-row article.warning{border-color:#f1d69d;background:#fffaf0}.filter-panel{margin-bottom:15px;padding:13px}.filter-panel form{display:flex;align-items:center;gap:8px}.filter-panel .search-form{flex:1}.filter-panel select,.filter-panel button{height:36px;padding:0 10px;border:1px solid #dfe5ed;border-radius:8px;background:var(--white);color:var(--ink);font-size:.65rem}.filter-panel button{border-color:#3168d7;background:#3168d7;color:#fff;font-weight:800}.filter-panel form>a{color:var(--blue);font-size:.64rem;font-weight:800}.tag.warning,.status-badge.warning{background:#fff2d9;color:#9b6816}.row-menu{position:relative}.row-menu summary{width:30px;height:28px;display:grid;place-items:center;list-style:none;border:1px solid var(--line);border-radius:7px;cursor:pointer}.row-menu div{position:absolute;right:0;top:32px;z-index:5;width:155px;padding:7px;border:1px solid var(--line);border-radius:9px;background:var(--white);box-shadow:var(--shadow)}.row-menu a{display:block;padding:7px;border-radius:6px;font-size:.63rem}.row-menu a:hover{background:var(--canvas)}.mobile-tool-list{display:none}.empty-state-card{padding:45px 24px;text-align:center;border:1px dashed #ccd6e2;border-radius:15px;background:var(--white)}.empty-state-icon{width:48px;height:48px;margin:0 auto 13px;display:grid;place-items:center;border-radius:14px;background:#eaf1ff;color:#3168d7;font-size:1.4rem}.empty-state-card h3{margin:0 0 7px;font:800 .95rem Manrope,sans-serif}.empty-state-card p{max-width:500px;margin:0 auto 18px;color:var(--muted);font-size:.7rem;line-height:1.6}.empty-state-card>div:last-child{display:flex;justify-content:center;gap:8px}.loan-stats{grid-template-columns:repeat(5,1fr)}.status-tabs{display:flex;gap:4px;margin-bottom:14px;padding:5px;overflow:auto;border:1px solid var(--line);border-radius:11px;background:var(--white)}.status-tabs a{padding:8px 12px;border-radius:7px;color:var(--muted);font-size:.63rem;font-weight:700;white-space:nowrap}.status-tabs a.active,.status-tabs a:hover{background:var(--blue-soft);color:var(--blue)}.loan-card{margin-bottom:12px;padding:18px 20px;border:1px solid var(--line);border-radius:14px;background:var(--white);box-shadow:0 4px 15px rgba(32,59,100,.04)}.loan-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:15px}.loan-card-head small{color:var(--blue);font-size:.61rem;font-weight:800}.loan-card-head h3{margin:4px 0 0;font:800 .85rem Manrope,sans-serif}.status-badge{display:inline-flex;padding:5px 9px;border-radius:999px;font-size:.59rem;font-weight:800}.status-badge.success{background:#e5f8f0;color:#148263}.status-badge.danger{background:#ffebeb;color:#bb3e3e}.status-badge.neutral{background:#edf2f8;color:#50637a}.loan-card-meta{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:15px 0;padding:12px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.loan-card-meta small,.loan-card-meta strong{display:block}.loan-card-meta small{color:var(--muted);font-size:.57rem}.loan-card-meta strong{margin-top:3px;font-size:.65rem}.loan-item-summary{display:flex;flex-wrap:wrap;gap:6px}.loan-item-summary span{padding:6px 8px;border-radius:7px;background:var(--canvas);font-size:.6rem}.loan-item-summary b{margin-left:6px}.loan-card-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:13px}.step-indicator{display:grid;grid-template-columns:repeat(4,1fr);margin:0 0 16px;padding:0;list-style:none;border:1px solid var(--line);border-radius:13px;background:var(--white);overflow:hidden}.step-indicator li{position:relative;display:flex;align-items:center;justify-content:center;gap:8px;padding:14px;color:#8d99a8;font-size:.63rem}.step-indicator li:not(:last-child):after{content:"";position:absolute;right:0;width:1px;height:24px;background:var(--line)}.step-indicator span{width:24px;height:24px;display:grid;place-items:center;border-radius:50%;background:#edf1f6;font-weight:800}.step-indicator li.active{color:var(--blue)}.step-indicator li.active span{background:var(--blue);color:#fff}.step-indicator li.complete span{background:#168565;color:#fff}.loan-step{display:none}.loan-step.active{display:block}.form-field-full{grid-column:1/-1}.catalog-search{max-width:420px;margin-bottom:14px}.loan-tool-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:11px}.loan-tool-card{position:relative;display:grid;grid-template-columns:auto 1fr auto;gap:10px;padding:14px;border:1px solid var(--line);border-radius:11px;background:#fafbfd;cursor:pointer}.loan-tool-card>input[type=checkbox]{position:absolute;opacity:0}.tool-card-check{width:24px;height:24px;display:grid;place-items:center;border:1px solid #c8d2df;border-radius:7px;background:#fff;color:#64758a;font-weight:800}.loan-tool-card:has([data-tool-check]:checked){border-color:#7da4ec;background:#f3f7ff}.loan-tool-card:has([data-tool-check]:checked) .tool-card-check{border-color:#3268d8;background:#3268d8;color:#fff}.loan-tool-card small,.loan-tool-card strong,.loan-tool-card p{display:block}.loan-tool-card small{color:var(--blue);font-size:.55rem;font-weight:800}.loan-tool-card strong{margin-top:3px;font-size:.69rem}.loan-tool-card p{margin:4px 0 0;color:var(--muted);font-size:.57rem}.loan-tool-card em{grid-column:2/3;color:#168565;font-size:.58rem;font-style:normal}.loan-tool-card em.empty{color:#b34444}.tool-qty{grid-column:3/4;grid-row:2/3;width:58px;height:30px;padding:0 7px;border:1px solid #cfd9e5;border-radius:7px}.review-banner{padding:14px;border:1px solid #d7e4f7;border-radius:10px;background:#f5f8ff}.review-banner strong{font-size:.72rem}.review-banner p{margin:4px 0 0;color:var(--muted);font-size:.62rem}.review-items{margin-top:12px}.review-items>div{display:flex;justify-content:space-between;padding:11px;border-bottom:1px solid var(--line);font-size:.66rem}.responsibility-check{display:flex;align-items:flex-start;gap:12px;padding:18px;border:1px solid #d8e3f4;border-radius:11px;background:#f5f8ff;cursor:pointer}.responsibility-check input{position:absolute;opacity:0}.responsibility-check span{width:22px;height:22px;flex:0 0 auto;border:2px solid #a9b9cf;border-radius:6px;background:#fff}.responsibility-check:has(input:checked) span{border-color:#3268d8;background:#3268d8;box-shadow:inset 0 0 0 4px #fff}.responsibility-check strong{font-size:.69rem;line-height:1.55}.step-actions{position:sticky;bottom:12px;z-index:10;display:flex;align-items:center;justify-content:flex-end;gap:9px;margin-top:14px;padding:12px;border:1px solid var(--line);border-radius:12px;background:rgba(255,255,255,.96);box-shadow:0 12px 30px rgba(23,42,69,.12)}.step-actions>span{margin-right:auto;color:var(--muted);font-size:.62rem}
html[data-theme="dark"] .loan-tool-card,html[data-theme="dark"] .responsibility-check,html[data-theme="dark"] .step-actions{background:#101b2b}html[data-theme="dark"] .stat-row article.warning{background:#2a2418}
@media(max-width:1050px){.loan-stats{grid-template-columns:repeat(3,1fr)}.loan-tool-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:720px){.header-actions,.filter-panel form{align-items:stretch;flex-direction:column}.filter-panel .search-form{width:100%}.stat-row,.loan-stats{grid-template-columns:repeat(2,1fr)}.desktop-tool-table{display:none}.mobile-tool-list{display:grid;gap:10px}.mobile-tool-list article{padding:15px;border:1px solid var(--line);border-radius:12px;background:var(--white)}.mobile-tool-list h3{margin:8px 0 3px;font-size:.78rem}.mobile-tool-list p{color:var(--muted);font-size:.62rem}.loan-card-meta{grid-template-columns:1fr 1fr}.loan-tool-grid{grid-template-columns:1fr}.step-indicator strong{display:none}.step-actions{flex-wrap:wrap}.step-actions>span{width:100%;margin:0}.empty-state-card>div:last-child{align-items:center;flex-direction:column}}
.detail-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(300px,.75fr);gap:20px}.detail-grid>*{min-width:0}.table-shell{width:100%;max-width:100%;overflow-x:auto}.summary-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 28px;margin:0}.summary-list div{padding:14px 0;border-bottom:1px solid var(--line)}.summary-list .wide{grid-column:1/-1}.summary-list dt{font-size:12px;color:var(--muted);margin-bottom:4px}.summary-list dd{margin:0;font-weight:700}.status-timeline{list-style:none;margin:0;padding:0}.status-timeline li{position:relative;display:flex;gap:13px;min-height:64px}.status-timeline li:not(:last-child):before{content:"";position:absolute;left:7px;top:17px;bottom:-2px;width:2px;background:var(--line)}.status-timeline i{position:relative;z-index:1;width:16px;height:16px;margin-top:3px;border:3px solid var(--line);border-radius:50%;background:var(--white);flex:none}.status-timeline li.done i{border-color:#168565;background:#168565}.status-timeline li.done:not(:last-child):before{background:#168565}.status-timeline div{display:grid;gap:2px}.status-timeline span,.status-timeline small{font-size:12px;color:var(--muted)}.success-toast,.error-alert{border:1px solid #a7e4c3;background:#edfff5;color:#166534;border-radius:12px;padding:14px 16px;margin:0 0 16px}.error-alert{border-color:#fecaca;background:#fff1f2;color:#991b1b}.error-alert ul{margin:8px 0 0;padding-left:20px}.sticky-action-panel,.sticky-action-bar{display:flex;align-items:center;justify-content:flex-end;gap:10px;background:var(--white);border:1px solid var(--line);border-radius:14px;padding:14px 16px;margin:18px 0;box-shadow:0 12px 30px rgba(15,23,42,.08)}.sticky-action-panel p{margin:0 auto 0 0;color:var(--muted)}.approval-item,.warehouse-item{display:grid;grid-template-columns:minmax(0,1fr) 180px;gap:20px;align-items:center;padding:15px 0;border-bottom:1px solid var(--line)}.approval-item span,.warehouse-item>div{display:grid;gap:3px}.approval-item small,.warehouse-item small{color:var(--muted)}.approval-item input{width:100%;box-sizing:border-box}.warehouse-item fieldset{grid-column:1/-1;border:1px solid var(--line);border-radius:10px;padding:12px}.checkbox-line{display:flex;gap:8px;align-items:center;padding:7px}.stock-warning{color:#b93c3c;font-size:12px;font-weight:700}.secondary-button.danger{color:#b93c3c;border-color:#fecaca}.data-table td small{display:block;color:var(--muted);margin-top:3px}.muted{color:var(--muted)}html[data-theme=dark] .success-toast{background:#102a22;border-color:#215844;color:#8ee5bc}html[data-theme=dark] .error-alert{background:#32171d;border-color:#6f2935;color:#fda4af}@media(max-width:900px){.detail-grid{grid-template-columns:1fr}.approval-item,.warehouse-item{grid-template-columns:1fr}.summary-list{grid-template-columns:1fr}.summary-list .wide{grid-column:auto}}
.tool-stats{grid-template-columns:repeat(5,1fr)}.filter-panel form{flex-wrap:wrap}.filter-panel .search-form{min-width:210px}.data-table th a{color:inherit}.stat-code{font-size:.78rem!important;line-height:1.35}@media(max-width:1050px){.tool-stats{grid-template-columns:repeat(3,1fr)}}@media(max-width:720px){.tool-stats{grid-template-columns:repeat(2,1fr)}}
.catalog-toolbar{display:flex;align-items:center;gap:10px;margin-bottom:14px}.catalog-toolbar .catalog-search{flex:1;margin:0}.catalog-toolbar select{max-width:230px}.empty-state-card.compact{padding:24px;margin-top:12px}@media(max-width:620px){.catalog-toolbar{align-items:stretch;flex-direction:column}.catalog-toolbar select{max-width:none}}
.field{display:grid;gap:7px}.field>span,.field legend{font-size:.7rem;font-weight:800}.field input,.field select,.field textarea,.approval-item input,.warehouse-item input{width:100%;padding:10px 11px;border:1px solid #d9e1eb;border-radius:9px;background:var(--white);color:var(--ink);font:inherit}.field input:focus,.field select:focus,.field textarea:focus{outline:3px solid #2764e71c;border-color:#5d88e8}.info-banner{padding:13px 14px;margin:10px 0;border:1px solid #d8e4f5;border-radius:10px;background:#f5f8ff;color:#355574}.info-banner p{margin:4px 0 0;font-size:.68rem;line-height:1.5}.form-section-heading{display:flex;align-items:flex-start;gap:12px;margin-bottom:18px}.form-section-heading>span{width:29px;height:29px;display:grid;place-items:center;flex:none;border-radius:9px;background:var(--blue-soft);color:var(--blue);font-size:.64rem;font-weight:900}.form-section-heading h3{margin:0;font:800 .9rem Manrope,sans-serif}.form-section-heading p{margin:3px 0 0;color:var(--muted);font-size:.66rem}
.loading-skeleton{display:grid;gap:10px}.loading-skeleton i{height:44px;border-radius:9px;background:linear-gradient(90deg,var(--canvas),var(--white),var(--canvas));background-size:200% 100%;animation:skeleton 1.2s infinite}.audit-summary{display:grid;gap:3px;padding:12px;border:1px solid var(--line);border-radius:10px;color:var(--muted);font-size:.68rem}.mobile-bottom-action{display:none}@keyframes skeleton{to{background-position:-200% 0}}@media(max-width:720px){.mobile-bottom-action{position:sticky;bottom:0;z-index:10;display:flex;gap:8px;padding:12px;background:var(--white);border-top:1px solid var(--line)}}
:where(a,button,input,select,textarea,summary):focus-visible{outline:3px solid #2764e755;outline-offset:2px}.login-theme-toggle{position:fixed;top:18px;right:18px;z-index:20}html[data-theme=dark] .login-body,html[data-theme=dark] .login-panel{background:#0e1724}html[data-theme=dark] .login-card h2,html[data-theme=dark] .login-form label,html[data-theme=dark] .mobile-brand{color:#e7edf6}html[data-theme=dark] .input-wrap{background:#162235;border-color:#314258}html[data-theme=dark] .input-wrap input{color:#e7edf6}html[data-theme=dark] .login-note{background:#162235;color:#aab7c8}html[data-theme=dark] .login-subtitle{color:#9daabd}
