@font-face{font-family:Poppins;src:url('poppins-400.ttf')}@font-face{font-family:Poppins;src:url('poppins-600.ttf');font-weight:600}@font-face{font-family:Poppins;src:url('poppins-700.ttf');font-weight:700}
:root{--ink:#102019;--muted:#68746e;--line:#dfe7e2;--paper:#fff;--wash:#f3f7f4;--green:#146b45;--green-dark:#0c4f34;--lime:#d8f0df;--orange:#9b6214;--red:#a23d36;--shadow:0 18px 46px rgba(18,48,34,.09)}*{box-sizing:border-box}html{background:var(--wash);color:var(--ink);font-family:Poppins,Arial,sans-serif}body{margin:0;min-width:320px}button,input,select,textarea{font:inherit}a{color:inherit}.portal-brand{align-items:center;display:grid;grid-template-columns:42px auto;grid-template-rows:auto auto;text-decoration:none}.portal-brand>span{align-items:center;background:var(--green);border-radius:12px;color:#fff;display:flex;font-size:12px;font-weight:700;grid-row:1/3;height:42px;justify-content:center;letter-spacing:1px;margin-right:11px;width:42px}.portal-brand>b{font-size:17px;line-height:20px}.portal-brand>small{color:var(--muted);font-size:10px;letter-spacing:1.3px;text-transform:uppercase}.portal-brand-light{color:#fff}.portal-brand-light>small{color:#a8bdb3}.portal-topbar{align-items:center;background:#fff;border-bottom:1px solid var(--line);display:flex;height:76px;padding:0 max(22px,calc((100vw - 1240px)/2));position:sticky;top:0;z-index:20}.portal-topbar nav{display:flex;gap:8px;margin-left:70px}.portal-topbar nav a{border-radius:9px;color:#526159;font-size:13px;font-weight:600;padding:10px 14px;text-decoration:none}.portal-topbar nav a.active,.portal-topbar nav a:hover{background:#edf6f0;color:var(--green-dark)}.portal-account{align-items:center;display:flex;gap:18px;margin-left:auto}.portal-account>span{display:flex;flex-direction:column;text-align:right}.portal-account b{font-size:12px}.portal-account small{color:var(--muted);font-size:10px}.portal-account button,.portal-menu-button{background:none;border:1px solid var(--line);border-radius:8px;color:#5a665f;cursor:pointer;font-size:11px;padding:8px 10px}.portal-menu-button{display:none}.portal-flash{border-radius:10px;margin:18px auto 0;max-width:1240px;padding:13px 18px}.portal-flash-success{background:#e4f4e9;color:#165c3b}.portal-flash-error{background:#fae9e7;color:#87372f}.portal-flash-info{background:#eef3f0;color:#46544d}.portal-access{display:grid;grid-template-columns:minmax(480px,1.08fr) minmax(460px,.92fr);min-height:calc(100vh - 65px)}.portal-access-hero{background:linear-gradient(120deg,rgba(5,25,17,.97),rgba(6,54,35,.88)),url('login-hero.webp') center/cover;color:#fff;display:flex;flex-direction:column;justify-content:space-between;padding:58px max(48px,calc((100vw - 1240px)/2)) 58px 7vw}.portal-access-hero>div{max-width:650px}.portal-access-hero h1{font-size:clamp(42px,4.8vw,72px);font-weight:600;letter-spacing:-2.8px;line-height:1.02;margin:16px 0 22px}.portal-access-hero>div>p:last-child{color:#c0d0c8;font-size:16px;line-height:1.75;max-width:580px}.portal-kicker{color:var(--green);font-size:10px;font-weight:700;letter-spacing:2px;margin:0 0 8px}.portal-access-hero .portal-kicker{color:#8ad1a9}.portal-access-hero ul{display:grid;gap:20px;grid-template-columns:repeat(3,1fr);list-style:none;margin:40px 0 0;padding:0}.portal-access-hero li{border-left:1px solid rgba(255,255,255,.22);display:flex;flex-direction:column;padding-left:18px}.portal-access-hero li b{font-size:13px}.portal-access-hero li span{color:#9fb5aa;font-size:10px;margin-top:4px}.portal-access-panel{align-items:center;background:#f5f7f6;display:flex;justify-content:center;padding:44px}.portal-access-card{max-width:510px;width:100%}.portal-tabs{background:#e5ebe7;border-radius:12px;display:grid;grid-template-columns:1fr 1fr;margin-bottom:28px;padding:4px}.portal-tabs button{background:none;border:0;border-radius:9px;color:#69756e;cursor:pointer;font-size:12px;font-weight:600;padding:11px}.portal-tabs button.active{background:#fff;box-shadow:0 4px 16px rgba(20,50,35,.08);color:var(--ink)}.portal-access-card form,.portal-form-card,.portal-workshop-form{background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow);padding:34px}.portal-form-title p{color:var(--green);font-size:10px;font-weight:700;letter-spacing:2px;margin:0}.portal-form-title h2{font-size:28px;letter-spacing:-.8px;margin:5px 0 8px}.portal-form-title span{color:var(--muted);font-size:12px}.portal-access-card label,.portal-stack-form label,.portal-add-item label,.portal-workshop-form label{color:#425048;display:flex;flex-direction:column;font-size:11px;font-weight:600;gap:7px;margin-top:18px}.portal-access-card input,.portal-stack-form input,.portal-stack-form select,.portal-stack-form textarea,.portal-add-item input,.portal-workshop-form input,.portal-workshop-form textarea{background:#fbfcfb;border:1px solid #d7e0da;border-radius:9px;color:var(--ink);outline:none;padding:12px 13px;width:100%}.portal-access-card input:focus,.portal-stack-form input:focus,.portal-stack-form select:focus,.portal-stack-form textarea:focus,.portal-add-item input:focus,.portal-workshop-form input:focus,.portal-workshop-form textarea:focus{border-color:#5ba57a;box-shadow:0 0 0 3px rgba(30,125,77,.09)}.portal-primary,.portal-secondary{border:0;border-radius:9px;cursor:pointer;font-size:12px;font-weight:700;padding:13px 18px}.portal-primary{background:var(--green);color:#fff}.portal-primary:hover{background:var(--green-dark)}.portal-primary:disabled{cursor:not-allowed;opacity:.45}.portal-secondary{background:#edf2ef;color:#35483e}.portal-access-card form>.portal-primary{margin-top:24px;width:100%}.portal-form-note{color:#89938e;font-size:10px;line-height:1.6;margin:14px 0 0;text-align:center}.portal-form-error{background:#fae9e7;border-radius:9px;color:#87372f;font-size:11px;margin-bottom:14px;padding:11px 13px}.portal-form-grid{display:grid;gap:0 14px;grid-template-columns:1fr 1fr}.portal-form-grid .wide{grid-column:1/-1}.portal-check{align-items:flex-start!important;display:flex!important;flex-direction:row!important;font-weight:400!important;line-height:1.55}.portal-check input{margin-top:3px;width:auto}.portal-main{margin:0 auto;max-width:1284px;padding:42px 22px 64px}.portal-narrow{max-width:850px}.portal-welcome,.portal-page-head{align-items:flex-end;display:flex;justify-content:space-between;margin-bottom:25px}.portal-welcome h1,.portal-page-head h1{font-size:clamp(32px,4vw,48px);font-weight:600;letter-spacing:-1.8px;line-height:1.08;margin:4px 0 8px}.portal-welcome>div>p:last-child,.portal-page-head>div>p:last-child{color:var(--muted);font-size:13px;margin:0}.portal-link-button{text-decoration:none}.portal-approval-banner{align-items:center;background:linear-gradient(100deg,#0d5136,#18704b);border-radius:15px;color:#fff;display:grid;gap:20px;grid-template-columns:140px 1fr auto;margin-bottom:22px;padding:19px 22px}.portal-approval-banner>span{color:#9bc9ae;font-size:10px;font-weight:700;letter-spacing:1.5px}.portal-approval-banner b{font-size:13px}.portal-approval-banner p{color:#bcd4c7;font-size:10px;margin:4px 0 0}.portal-approval-banner em{background:rgba(255,255,255,.14);border-radius:18px;font-size:10px;font-style:normal;padding:7px 12px}.portal-stats{display:grid;gap:14px;grid-template-columns:repeat(4,1fr);margin-bottom:22px}.portal-stats article{background:#fff;border:1px solid var(--line);border-radius:14px;display:flex;flex-direction:column;padding:19px 21px}.portal-stats span{color:#7a857f;font-size:9px;font-weight:700;letter-spacing:1.4px}.portal-stats strong{font-size:30px;font-weight:600;margin:5px 0}.portal-stats .portal-code{font-size:21px;margin:11px 0}.portal-stats small{color:#89948e;font-size:9px}.portal-dashboard-grid{display:grid;gap:22px;grid-template-columns:1.4fr .7fr}.portal-card{background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:0 8px 28px rgba(20,48,35,.045)}.portal-card>header{align-items:center;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;padding:21px 23px}.portal-card h2{font-size:19px;margin:3px 0 0}.portal-card>header>a{color:var(--green);font-size:11px;font-weight:600}.portal-empty{align-items:center;color:var(--muted);display:flex;flex-direction:column;justify-content:center;min-height:250px;padding:40px;text-align:center}.portal-empty>span{align-items:center;background:#ecf5ef;border-radius:50%;color:var(--green);display:flex;font-size:12px;font-weight:700;height:54px;justify-content:center;width:54px}.portal-empty h3{color:var(--ink);font-size:16px;margin:14px 0 5px}.portal-empty p{font-size:11px;margin:0 0 14px}.portal-empty a{color:var(--green);font-size:11px;font-weight:700}.portal-empty.compact{min-height:180px}.portal-next{padding:23px}.portal-next h2{margin-bottom:20px}.portal-next>a{align-items:center;border-top:1px solid var(--line);display:flex;gap:13px;padding:16px 0;text-decoration:none}.portal-next>a>span{align-items:center;background:#edf4f0;border-radius:8px;color:var(--green);display:flex;font-size:9px;font-weight:700;height:31px;justify-content:center;width:31px}.portal-next>a div{display:flex;flex-direction:column}.portal-next>a b{font-size:12px}.portal-next>a small{color:var(--muted);font-size:9px;margin-top:3px}.portal-list>a,.portal-list>div{align-items:center;border-bottom:1px solid var(--line);display:flex;gap:13px;padding:14px 22px;text-decoration:none}.portal-list>a:last-child,.portal-list>div:last-child{border-bottom:0}.portal-list-icon{align-items:center;background:#eaf4ed;border-radius:9px;color:var(--green);display:flex;font-size:9px;font-weight:700;height:36px;justify-content:center;width:36px}.portal-list div{display:flex;flex:1;flex-direction:column}.portal-list b{font-size:11px}.portal-list small{color:var(--muted);font-size:9px}.portal-status{border-radius:20px;font-size:9px;font-style:normal;font-weight:700;padding:6px 10px;white-space:nowrap}.status-draft{background:#eef1ef;color:#66716b}.status-submitted,.status-in_review,.status-pending{background:#fff2da;color:#8a5b13}.status-active,.status-approved,.status-completed{background:#e3f4e9;color:#17603d}.status-needs_changes,.status-rejected,.status-cancelled{background:#fae8e6;color:#933e37}.status-ordered,.status-shipped{background:#e7effa;color:#365f91}.portal-page-head>a:not(.portal-primary),.portal-head-actions>a{color:var(--green);font-size:11px;font-weight:700}.portal-head-actions{align-items:center;display:flex;gap:12px}.portal-stack-form{display:flex;flex-direction:column}.portal-stack-form label:first-of-type{margin-top:0}.portal-add-item{margin-bottom:20px}.portal-add-item form{align-items:end;display:grid;gap:13px;grid-template-columns:1.25fr .45fr 1fr 1.5fr auto;padding:0 23px 23px}.portal-add-item label.wide{grid-column:auto}.portal-add-item header small{color:var(--muted);font-size:9px}.portal-order-lines header{border-bottom:0}.portal-table-wrap{overflow:auto}.portal-table-wrap table{border-collapse:collapse;min-width:760px;width:100%}.portal-table-wrap th{background:#f5f8f6;color:#7b8680;font-size:8px;letter-spacing:1.2px;padding:11px 15px;text-align:left}.portal-table-wrap td{border-top:1px solid var(--line);font-size:11px;padding:13px 15px}.portal-table-wrap td small{color:var(--muted);display:block;font-size:8px;margin-top:3px}.portal-quantity-form{align-items:center;display:flex;gap:5px}.portal-quantity-form input{border:1px solid var(--line);border-radius:6px;padding:6px;width:60px}.portal-quantity-form button,.portal-danger-link{background:none;border:0;color:var(--green);cursor:pointer;font-size:9px;font-weight:700}.portal-danger-link{color:var(--red)}.portal-order-lines>footer{align-items:center;border-top:1px solid var(--line);display:flex;justify-content:space-between;padding:18px 22px}.portal-order-lines>footer>span{color:var(--muted);font-size:9px}.portal-order-list{overflow:hidden}.portal-list-head,.portal-order-row{align-items:center;display:grid;gap:15px;grid-template-columns:1.3fr .8fr .8fr .8fr .6fr;padding:13px 20px}.portal-list-head{background:#f5f8f6;color:#7b8680;font-size:8px;font-weight:700;letter-spacing:1px}.portal-order-row{border-top:1px solid var(--line);font-size:10px;text-decoration:none}.portal-order-row:hover{background:#f8fbf9}.portal-order-row b{font-size:11px}.portal-workshop-layout{align-items:start;display:grid;gap:22px;grid-template-columns:.75fr 1.25fr}.portal-workshop-list{overflow:hidden}.portal-workshop-form{padding:0}.portal-workshop-form>form{padding:4px 25px 25px}.portal-workshop-form>header>span{color:var(--muted);font-size:9px}.portal-form-section{border-bottom:1px solid var(--line);padding:16px 0 20px}.portal-form-section h3{font-size:12px;margin:0}.portal-workshop-form label small,.portal-access-card label small{color:var(--muted);font-size:8px;font-weight:400}.portal-form-actions{display:flex;justify-content:flex-end;gap:10px;padding-top:20px}.portal-footer{color:#7c8781;display:flex;font-size:9px;justify-content:space-between;margin:0 auto;max-width:1284px;padding:0 22px 30px}
@media(max-width:900px){.portal-access{grid-template-columns:1fr}.portal-access-hero{min-height:560px;padding:38px 28px}.portal-access-panel{padding:32px 18px}.portal-topbar{padding:0 16px}.portal-topbar nav{background:#fff;border-bottom:1px solid var(--line);display:none;left:0;margin:0;padding:12px 16px;position:absolute;right:0;top:76px}.portal-menu-open .portal-topbar nav{display:flex}.portal-menu-button{display:block;margin-left:12px}.portal-account>span{display:none}.portal-stats{grid-template-columns:1fr 1fr}.portal-dashboard-grid,.portal-workshop-layout{grid-template-columns:1fr}.portal-add-item form{grid-template-columns:1fr 1fr}.portal-add-item label.wide{grid-column:1/-1}.portal-list-head{display:none}.portal-order-row{grid-template-columns:1fr auto}.portal-order-row>span:nth-of-type(1),.portal-order-row>span:last-child{display:none}}
@media(max-width:560px){.portal-access-hero{min-height:620px}.portal-access-hero h1{font-size:43px}.portal-access-hero ul{grid-template-columns:1fr}.portal-access-panel{padding:20px 12px}.portal-access-card form{padding:25px 20px}.portal-form-grid{grid-template-columns:1fr}.portal-form-grid .wide{grid-column:auto}.portal-topbar{height:68px}.portal-brand small{display:none}.portal-topbar nav{flex-direction:column;top:68px}.portal-account{gap:5px}.portal-main{padding:28px 12px 50px}.portal-welcome,.portal-page-head{align-items:flex-start;gap:18px}.portal-welcome h1,.portal-page-head h1{font-size:34px}.portal-approval-banner{grid-template-columns:1fr}.portal-approval-banner>span{display:none}.portal-stats{grid-template-columns:1fr 1fr;gap:8px}.portal-stats article{padding:15px}.portal-dashboard-grid{gap:12px}.portal-add-item form{grid-template-columns:1fr}.portal-add-item label.wide{grid-column:auto}.portal-order-lines>footer{align-items:flex-start;gap:15px}.portal-footer{flex-direction:column;gap:5px}.portal-workshop-form>form{padding:4px 18px 20px}}
