*{box-sizing:border-box}body{background:var(--bulu-bg);color:var(--bulu-ink);margin:0;font:14px/1.6 system-ui,-apple-system,sans-serif}button,input,textarea,select{font:inherit}button{cursor:pointer;background:var(--bulu-green);color:#fff;border:0;border-radius:12px;padding:9px 16px}button:disabled{opacity:.45;cursor:not-allowed}button.secondary{color:#354359;background:#e9eef3}input,textarea,select{color:#182537;background:#fff;border:1px solid #d6dee8;border-radius:8px;width:100%;padding:10px}input:focus,textarea:focus{outline:2px solid #81b9af}label{margin:15px 0;font-weight:600;display:block}label input,label textarea,label select{margin-top:6px;font-weight:400;display:block}.check{align-items:center;gap:10px;display:flex}.check input{width:auto;margin:0}fieldset{border:0;margin:0;padding:0}h1{margin:0;font-size:28px}h2{margin:0 0 12px;font-size:19px}.brand{letter-spacing:3px;font-size:23px;font-weight:800}.brand small{letter-spacing:2px;color:#a6babd;font-size:12px;display:block}.layout{grid-template-columns:225px minmax(0,1fr);min-height:100vh;display:grid}aside{color:var(--bulu-ink);border-right:1px solid var(--bulu-line);background:#fff;flex-direction:column;height:100vh;padding:30px 20px;display:flex;position:sticky;top:0}nav{gap:6px;margin-top:36px;display:grid}nav button{text-align:left;color:#61728a;background:0 0}nav button[aria-current=page]{background:var(--bulu-mint);color:#00855a}footer{margin-top:auto;padding:25px 0 0}footer small{color:#adbdc1;margin:4px 0 12px;display:block}main{width:100%;max-width:1500px;padding:35px 42px}header{justify-content:space-between;align-items:center;margin-bottom:30px;display:flex}.eyebrow{letter-spacing:2px;color:#637486;margin:0 0 5px;font-size:11px}.cards{grid-template-columns:repeat(4,1fr);gap:18px;display:grid}.cards article,section,.table{background:#fff;border:1px solid #e4e9ef;border-radius:22px;margin-bottom:24px;padding:22px}.cards strong{margin-top:14px;font-size:32px;display:block}.cards span,.hint{color:#677589}.table{padding:0;overflow-x:auto}table{border-collapse:collapse;white-space:nowrap;width:100%}th,td{text-align:left;border-bottom:1px solid #edf0f4;padding:14px 18px}th{color:#647587;background:#f8fafc;font-size:12px}td button{margin-right:6px;padding:6px 10px;font-size:12px}td small{color:#7b8794;margin-top:4px;display:block}.swatch{border-radius:6px;width:18px;height:18px;display:inline-block;box-shadow:inset 0 0 0 1px #0001}details pre{background:#f6f8fa;border-radius:8px;max-width:520px;max-height:280px;padding:12px;font-size:12px;overflow:auto}.error{color:#a43228;background:#fff0ed;border-radius:8px;padding:14px}.empty{text-align:center;color:#788594;padding:30px}.grid{grid-template-columns:1fr 1fr;gap:20px;display:grid}.actions{gap:10px;display:flex}.search{gap:10px;max-width:600px;margin:0 0 18px;display:flex}.version{border-top:1px solid #ddd;padding:15px 0}.version button{margin-left:15px}.harness-cards article small{color:#84919f;display:block}.harness-cards strong small{font-size:12px;display:inline}.harness-grid{grid-template-columns:repeat(4,minmax(150px,1fr))}.tool-grid{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.tool-grid article{background:#f9fbfd;border:1px solid #e7edf3;border-radius:14px;gap:10px;padding:14px;display:flex}.tool-grid article>svg{color:var(--bulu-green);flex:none}.tool-grid strong,.tool-grid small{display:block}.tool-grid small{color:#83919e;font-size:11px}.tool-grid p{color:#607080;margin:4px 0 0;font-size:12px}.run-status{color:#5c6975;background:#eef2f5;border-radius:999px;padding:3px 8px;font-size:11px;display:inline-block}.run-status.succeeded{color:#087c5d;background:#e5f8f0}.run-status.failed{color:#b44a40;background:#fff0ed}.run-status.running{color:#3975c4;background:#eaf2ff}.harness-result{background:#f0faf6;border:1px solid #ccecdf;border-radius:14px;margin-top:16px;padding:16px}.harness-result p{white-space:pre-wrap}.harness-result small{color:#71808d}pre{white-space:pre-wrap;overflow-wrap:anywhere}.login{background:var(--bulu-bg);place-items:center;max-width:none;min-height:100vh;display:grid}.login form{background:#fff;border-radius:18px;width:min(440px,100%);padding:38px;box-shadow:0 20px 70px #14302912}.login .brand{color:#176f65}.login h1{margin-top:24px}.login button{width:100%;margin:12px 0}.login small{color:#76838b;display:block}@media (width<=900px){.layout{grid-template-columns:175px 1fr}main{padding:24px 18px}.cards{grid-template-columns:1fr 1fr}.grid{grid-template-columns:1fr}}@media (width<=600px){.layout{display:block}aside{height:auto;padding:15px;position:static}nav{margin-top:10px;display:flex;overflow:auto}nav button{white-space:nowrap}footer{margin:0;padding-top:12px}.cards{gap:8px}main{padding:20px 12px}}nav button{align-items:center;gap:10px;min-height:44px;display:flex}nav button svg{flex:none}button:focus-visible,input:focus-visible,select:focus-visible{outline-offset:3px;outline:3px solid #50cba5}.brand small,footer small{color:#77839b}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}.catalog-intro,.catalog-editor{background:#fff;border:1px solid #e4eaf2;border-radius:18px;margin:18px 0;padding:18px 20px}.catalog-intro b{color:#087e63;font-size:20px}.catalog-intro span,.catalog-intro p{color:#66758a}.catalog-intro p{margin:5px 0 0}.catalog-table-wrap{background:#fff;border:1px solid #e4eaf2;border-radius:16px;overflow:auto}.catalog-table{border-collapse:collapse;width:100%;min-width:850px}.catalog-table th,.catalog-table td{text-align:left;vertical-align:middle;border-bottom:1px solid #edf1f6;padding:10px 12px}.catalog-table th{white-space:nowrap;color:#68778a;background:#f8fafc}.catalog-table td b{white-space:nowrap}.catalog-table td small{text-overflow:ellipsis;white-space:nowrap;color:#8090a0;max-width:270px;display:block;overflow:hidden}.catalog-table tr:last-child td{border-bottom:0}.catalog-thumb,.catalog-icon{object-fit:cover;color:#087e63;background:#ebf8f3;border-radius:10px;place-items:center;width:38px;height:38px;font-weight:700;display:grid}.catalog-status{white-space:nowrap;color:#7b8493;background:#f1f2f4;border-radius:99px;padding:3px 8px}.catalog-status.active{color:#087e63;background:#e3f8ef}.catalog-actions{white-space:nowrap;align-items:center;gap:7px;display:flex}.catalog-actions button{padding:7px 10px}.catalog-editor .grid{align-items:end}.catalog-editor .check{min-height:43px}.module-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px;display:grid}.module-card{background:#fff;border:1px solid #e4eaf2;border-radius:18px;padding:18px}.module-card>div:first-child{align-items:baseline;gap:10px;display:flex}.module-card b{font-size:19px}.module-card small,.module-card p{color:#6c7a8e}.module-card p{margin:10px 0}.module-card strong{color:#087e63;font-size:25px}.module-card .catalog-actions{flex-wrap:wrap}.record-filters{flex-wrap:wrap;gap:7px;margin:12px 0;display:flex}.record-filters button{padding:7px 11px}.record-filters button.active{background:#087e63}.record-user-header{background:#fff;border:1px solid #e4eaf2;border-radius:16px;align-items:center;gap:16px;margin:12px 0;padding:15px 18px;display:flex}.record-user-header h2{margin:0}.record-user-header p{color:#68778a;margin:2px 0 0}@media (width<=600px){.record-user-header{flex-direction:column;align-items:flex-start}}.smart-import-table{overflow:auto}.smart-import-table table{min-width:1080px}.smart-import-table td small{margin-top:5px;display:block}.inline-actions{flex-wrap:wrap;gap:6px;display:flex}.import-config-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 24px;margin:0;display:grid}.import-config-list div{border-bottom:1px solid #edf1ee;padding:12px 0}.import-config-list dt{color:#839389;font-size:10px}.import-config-list dd{color:#36503f;overflow-wrap:anywhere;margin:6px 0 0}.import-pending{color:#705b28;background:#fff9ec;border-color:#ead9ad}.import-pending p{margin-bottom:0;line-height:1.8}.import-job-detail section{margin-top:18px}.import-job-detail h4{margin:0 0 12px}.import-commit{border-bottom:1px solid #edf1ee;justify-content:space-between;align-items:center;gap:12px;padding:12px 0;display:flex}.import-commit b{overflow-wrap:anywhere;font:11px monospace;display:block}.import-commit small{margin-top:5px;display:block}.parser-runtime{grid-template-columns:repeat(2,1fr);gap:8px;margin-bottom:12px;display:grid}.parser-runtime span{color:#587061;background:#f5f8f6;border-radius:7px;padding:8px 10px;font-size:11px}:root{--bulu-bg:#f6f8f7;--bulu-ink:#26362f;--bulu-muted:#78887e;--bulu-green:#236546;--bulu-mint:#e7f3ec;--bulu-line:#e4ebe6}body{color:var(--bulu-ink);font-family:Microsoft YaHei,system-ui,sans-serif;font-size:13px}button{border-radius:7px;padding:9px 13px;font-size:12px;transition:background .15s}button.secondary{color:#52675b;background:#fff;border:1px solid #dfe7e1}button:hover:not(:disabled){filter:brightness(.97)}button:focus-visible,a:focus-visible{outline-offset:3px;outline:2px solid #47896a}input,select,textarea{border-color:#dbe4de;padding:9px 11px}h1{letter-spacing:-.5px;font-size:26px}h2{font-size:16px}small,.hint{color:#78887e}.layout{grid-template-columns:232px minmax(0,1fr)}section,.table,.cards article{box-shadow:none;border-color:#e3eae5;border-radius:11px;margin-bottom:20px;padding:20px}.table{padding:0}th{color:#7a8b7f;background:#f7faf8;font-weight:500}th,td{border-color:#edf1ee;padding:12px 16px}td button{font-size:11px}td small{color:#88988d}.cards{gap:14px}.cards strong{font-size:29px}.grid{gap:18px}.search{max-width:650px}.module-card{box-shadow:none!important;border-radius:10px!important}.success{color:#296546;background:#e9f5ed;border:1px solid #c9e4d2;border-radius:8px;padding:12px 16px}.project-sidebar{background:#fff;border-right:1px solid #e3eae5;height:100dvh;padding:25px 15px 0;position:sticky;top:0;overflow:hidden}.workspace-brand{flex:none;align-items:center;gap:11px;margin:0 7px 19px;display:flex}.workspace-brand>span{color:#fff;background:#193f31;border-radius:10px;place-items:center;width:35px;height:35px;display:grid}.workspace-brand b{letter-spacing:.5px;font-size:16px;font-weight:650}.workspace-brand small{color:#8c9a91;margin-top:4px;font-size:10px;display:block}.project-sidebar nav{scrollbar-width:thin;flex:1;margin:0;padding-bottom:10px;display:block;overflow:auto}.nav-caption{color:#8d9b93;letter-spacing:1.5px;margin:15px 11px 7px;font-size:10px}.nav-caption span{float:right}.project-sidebar nav>button{color:#62786a;align-items:center;gap:10px;width:100%;padding:10px 11px;font-size:12px;display:flex}.project-sidebar nav button{box-shadow:none;background:0 0}.project-sidebar nav button[aria-current=page]{color:#236546;background:#e7f3ec;font-weight:600}.project-group{margin-top:5px}.project-sidebar .project-toggle{color:#344f3e;align-items:center;gap:10px;width:100%;padding:9px 10px;display:flex}.project-toggle b{font-size:13px}.project-toggle>svg{margin-left:auto}.project-toggle[aria-expanded=true]{background:#eef4f0!important}.project-toggle[aria-expanded=true]>svg{transform:rotate(90deg)}.project-mark{color:#367851;background:#dfeee4;border-radius:8px;flex:none;place-items:center;width:28px;height:28px;font-size:14px;font-weight:700;display:inline-grid}.unicraft-office .project-mark,.project-mark.unicraft-office{color:#7966b3;background:#eeeafa}.bulu .project-mark,.project-mark.bulu{color:#ad7b41;background:#fff1e3}.project-subnav{border-left:1px solid #e3eae5;margin:7px 0 10px 21px;padding-left:13px}.project-subnav button{text-align:left;color:#6d8173;border-radius:7px;justify-content:space-between;width:100%;padding:8px 10px;font-size:12px;display:flex}.project-subnav small{font-size:10px}.project-sidebar footer{background:#fff;border-top:1px solid #e8eee9;flex:none;align-items:center;gap:10px;margin-top:auto;padding:15px 6px;display:flex}.admin-avatar{color:#67816e;background:#edf2ee;border-radius:50%;place-items:center;width:30px;height:30px;font-weight:700;display:grid}.project-sidebar footer small{color:#91a096;margin:3px 0 0;font-size:10px}.project-sidebar footer b{font-size:12px}.project-sidebar footer button{color:#82948a;background:0 0;margin-left:auto;padding:6px}.workspace-main{min-width:0;max-width:none;padding:0 32px 30px}.workspace-topbar{color:#89978e;background:#fff;border-bottom:1px solid #e5ebe7;justify-content:space-between;align-items:center;gap:12px;height:64px;margin:0 -32px 26px;padding:0 32px;font-size:11px;display:flex}.workspace-topbar i{color:#bac3bd;margin:0 12px;font-style:normal}.workspace-live{color:#6c8475;white-space:nowrap;align-items:center;gap:6px;display:flex}.workspace-live>span{background:#6a9479;border-radius:50%;width:5px;height:5px}.workspace-header{margin-bottom:22px}.workspace-header .eyebrow{color:#8c9c92;letter-spacing:1.5px;margin-bottom:6px;font-size:10px}.workspace-subtitle{color:#819187;margin:8px 0 0;font-size:12px}.workspace-tabs{border-bottom:1px solid #e1e9e3;flex-wrap:wrap;gap:8px;margin-bottom:20px;padding-bottom:12px;display:flex}.workspace-tabs button{color:#6c8173;background:0 0}.workspace-tabs button[aria-current=page]{color:#276648;background:#e5f0e9}.project-banner{background:#eaf2ec;border:1px solid #dce8df;border-radius:11px;justify-content:space-between;align-items:center;gap:15px;margin-bottom:20px;padding:18px 21px;display:flex}.project-banner h2{align-items:center;gap:9px;margin:0 0 7px;font-size:15px;display:flex}.project-banner h2 small{color:#82978a;font-size:10px;font-weight:400}.project-banner p{color:#7b9081;margin:0;font-size:11px}.project-boundary{color:#5f806b;align-items:center;gap:10px;display:flex}.project-boundary b{font-size:11px}.project-boundary small{color:#81998a;margin-top:5px;font-size:10px;display:block}.workspace-metrics{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:20px;display:grid}.workspace-metric{text-align:left;color:#273e2f;background:#fff;border:1px solid #e3eae5;border-radius:10px;padding:16px 17px;display:block}.workspace-metric>span{color:#7b8c80;justify-content:space-between;align-items:center;font-size:11px;display:flex}.workspace-metric>span svg{color:#90a095}.workspace-metric strong{letter-spacing:-1px;margin:14px 0 8px;font:600 30px/1.25 Arial,sans-serif;display:block}.workspace-metric small{color:#90a095;justify-content:space-between;gap:5px;font-size:10px;display:flex}.workspace-metric small span{color:#528165}.workspace-columns{grid-template-columns:minmax(0,1fr) 272px;gap:19px;display:grid}.workspace-panel{background:#fff;border-radius:11px;margin:0;padding:0;overflow:hidden}.workspace-panel-heading{justify-content:space-between;align-items:center;gap:8px;padding:18px 19px 15px;display:flex}.workspace-panel-heading h2{margin:0;font-size:14px}.workspace-panel-heading p{color:#8a9a90;margin:5px 0 0;font-size:10px}.text-link{color:#527d60;white-space:nowrap;background:0 0;padding:4px 0;font-size:11px}.workspace-modules{grid-template-columns:repeat(4,minmax(0,1fr));gap:3px;padding:0 12px 14px;display:grid}.workspace-modules button{color:#435e4a;background:0 0;flex-direction:column;align-items:center;gap:8px;padding:13px 2px;display:flex}.workspace-modules button:hover{background:#f3f7f4}.workspace-modules b{font-size:12px;font-weight:500}.workspace-modules small{color:#93a096;font-size:10px}.module-symbol{color:#709078;background:#edf4ee;border-radius:10px;place-items:center;width:36px;height:36px;display:grid}.symbol-1{color:#669282;background:#edf4f1}.symbol-2{color:#ac926c;background:#f7f0e6}.symbol-3{color:#7991a7;background:#edf2f7}.symbol-4{color:#9a86ad;background:#f3eef7}.symbol-5{color:#b98b95;background:#f7edef}.symbol-6{color:#c08b9d;background:#f8edf1}.with-border{border-top:1px solid #edf1ee}.workspace-table{overflow:auto}.workspace-table th{padding:10px 18px;font-size:10px}.workspace-table td{padding:13px 18px;font-size:11px}.workspace-table tr:last-child td{border:0}.workspace-user{align-items:center;gap:9px;display:flex}.workspace-user i{color:#7a9984;background:#edf3ee;border-radius:50%;place-items:center;width:27px;height:27px;font-style:normal;display:grid}.workspace-stack{flex-direction:column;gap:15px;display:flex}.workspace-entry{text-align:left;color:#7d9786;background:0 0;border-top:1px solid #edf1ee;border-radius:0;align-items:center;gap:12px;width:100%;padding:13px 18px;display:flex}.workspace-entry>span{flex:1}.workspace-entry b{color:#3c5745;font-size:12px;font-weight:500}.workspace-entry small{color:#8b9c90;margin-top:5px;font-size:10px;display:block}.workspace-status{color:#7f9285;border-top:1px solid #edf1ee;justify-content:space-between;padding:12px 18px;font-size:11px;display:flex}.workspace-status b{color:#456e51;font-weight:500}.workspace-panel-actions{padding:14px 18px}.workspace-panel-actions button{justify-content:center;align-items:center;gap:8px;width:100%;display:flex}.project-auth{max-width:570px;margin:35px auto;padding:30px}.project-auth>.project-mark{width:40px;height:40px;margin-bottom:15px;font-size:20px}.project-auth p{color:#768c7f;line-height:1.9}.project-auth form{max-width:400px}.project-auth small{margin-top:18px;font-size:11px;display:block}.project-launchers{grid-template-columns:repeat(3,1fr);gap:18px;display:grid}.project-launchers h2{margin-top:18px}.version-badge{color:#52785e;background:#edf4ef;border-radius:5px;padding:5px 9px}.record-user-header{border-color:#dfebe3}.record-filters{gap:8px}.record-filters button{font-size:12px}.record-filters .active{background:var(--bulu-green)}.module-card h2{font-size:15px}.catalog-editor{box-shadow:none!important}.error{overflow-wrap:anywhere}@media (width>=1600px){.workspace-main{padding-left:45px;padding-right:45px}.workspace-topbar{margin-left:-45px;margin-right:-45px;padding-left:45px;padding-right:45px}}@media (width<=1100px){.layout{grid-template-columns:210px minmax(0,1fr)}.workspace-main{padding:0 22px 24px}.workspace-topbar{margin:0 -22px 22px;padding:0 22px}.workspace-columns{grid-template-columns:minmax(0,1fr) 235px}.project-boundary{display:none}.workspace-panel-heading{padding:16px}.workspace-table td,.workspace-table th{padding:11px}.workspace-metric{padding:14px}.harness-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=800px){.layout{display:block}.project-sidebar{height:auto;padding:16px;display:block;position:relative}.workspace-brand{margin-bottom:14px}.project-sidebar nav{max-height:280px}.project-sidebar footer{display:none}.project-sidebar .project-toggle{max-width:none}.workspace-topbar{font-size:10px}.workspace-live{display:none}.workspace-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.workspace-columns{grid-template-columns:1fr}.workspace-stack{grid-template-columns:1fr 1fr;display:grid}.project-launchers{grid-template-columns:1fr}.workspace-header h1{font-size:23px}.workspace-main{padding:0 16px 25px}.workspace-topbar{margin:0 -16px 20px;padding:0 16px}.workspace-header{gap:12px}.project-banner{padding:16px}.project-auth{margin:20px 0}.project-banner .actions{flex-wrap:wrap}.tool-grid,.grid,.workspace-stack{grid-template-columns:1fr}}.workspace-entry>.app-icon{flex:none}.workspace-entry>span:not(.app-icon){flex:1;min-width:0}.project-toggle>.app-icon{flex:none;margin-left:auto}.project-toggle[aria-expanded=true]>.app-icon{transform:rotate(90deg)}.project-sidebar .project-subnav button{min-height:34px}.project-sidebar .app-icon,.workspace-panel-actions .app-icon{flex:none}.unicraft-users-table{overflow:auto}.unicraft-users-table table{min-width:1180px}.unicraft-users-table tbody tr{cursor:pointer}.unicraft-users-table tbody tr:hover,.unicraft-users-table .selected-row{background:#f0f7f3}.unicraft-users-table code{text-overflow:ellipsis;color:#52675b;max-width:190px;font-size:11px;display:block;overflow:hidden}.password-mask{padding:4px 7px;font-family:monospace;color:#53665a!important;background:0 0!important;border:0!important}.password-mask span{color:#28704c;margin-left:5px;font-family:Microsoft YaHei,sans-serif}.project-user-detail{z-index:30;background:#fff;border-left:1px solid #dfe8e2;width:min(520px,94vw);height:100dvh;padding:26px;position:fixed;top:0;right:0;overflow:auto;box-shadow:-18px 0 45px #193f3117}.detail-heading{border-bottom:1px solid #e8eee9;justify-content:space-between;align-items:flex-start;gap:14px;padding-bottom:18px;display:flex}.detail-heading h3{margin:5px 0}.detail-heading p{color:#78887e;overflow-wrap:anywhere;font-size:11px}.project-user-detail form{margin-top:18px}.project-user-detail fieldset{border:1px solid #e3eae5;border-radius:10px;padding:17px}.project-user-detail h4{margin:0 0 14px}.modal-backdrop{z-index:60;background:#18372966;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.admin-modal{background:#fff;border-radius:14px;width:min(560px,96vw);max-height:90vh;padding:28px;position:relative;overflow:auto;box-shadow:0 24px 70px #102b1e40}.modal-close{color:#708178;background:0 0;padding:4px 8px;font-size:22px;position:absolute;top:14px;right:16px}.admin-modal textarea{width:100%;font-family:monospace;line-height:1.7}.temporary-password{background:#f5f8f6;border-radius:10px;gap:12px;padding:16px;display:grid}.temporary-password code{word-break:break-all;color:#173f2c;font-size:17px}.project-page-actions{justify-content:flex-end;margin:-8px 0 14px;display:flex}.bulu-overview-grid{grid-template-columns:1.25fr .75fr;gap:16px;display:grid}.bulu-overview-grid section{margin:0}.bulu-overview-grid p{color:#526078;align-items:center;gap:9px;display:flex}.bulu-service-row{border-bottom:1px solid #e7edf5;grid-template-columns:72px 1fr auto;align-items:center;gap:12px;padding:13px 0;display:grid}.bulu-service-row:last-child{border-bottom:0}.bulu-service-row small{color:#8792a8}.bulu-capabilities{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:10px;display:grid}.bulu-capabilities>div{border:1px solid #e5ece7;border-radius:9px;grid-template-columns:auto 1fr;align-items:center;gap:6px 10px;padding:12px;display:grid}.bulu-capabilities strong{font-size:12px}.bulu-capabilities small{grid-column:1/-1;line-height:1.6}.bulu-detail-grid{grid-template-columns:1fr 1fr;gap:12px;margin:0;display:grid}.bulu-detail-grid div{background:#f6f9f7;border-radius:8px;padding:11px}.bulu-detail-grid dt{color:#7c8d82;font-size:10px}.bulu-detail-grid dd{margin:5px 0 0;font-weight:600}.project-page-actions small{align-self:center;margin-right:auto}@media (width<=900px){.bulu-overview-grid{grid-template-columns:1fr}}.holiday-toolbar{justify-content:space-between;align-items:end;gap:20px;display:flex}.holiday-toolbar h2{margin-top:0}.holiday-toolbar label{min-width:150px}.holiday-layout{grid-template-columns:1fr 1fr;gap:18px;display:grid}.holiday-facts{grid-template-columns:1fr 1fr;gap:10px;margin:0;display:grid}.holiday-facts div{background:#f6f9f7;border-radius:8px;padding:11px}.holiday-facts dt{color:#7b8c80;font-size:10px}.holiday-facts dd{margin:5px 0 0;font-weight:600}.holiday-year-list{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.holiday-year-list button{text-align:left;color:#506358;background:#f7faf8;border:1px solid #e4ebe6;display:grid}.holiday-year-list button.active{color:#236546;background:#e7f3ec;border-color:#bfd8c8}.holiday-year-list span,.holiday-year-list small{font-size:10px}.holiday-days{gap:8px;margin:15px 0;display:grid}.holiday-day{grid-template-columns:160px minmax(220px,1fr) 90px 70px;align-items:center;gap:8px;display:grid}.holiday-day-head{color:#7b8c80;padding:0 4px;font-size:10px}.holiday-actions{flex-wrap:wrap;gap:8px;margin-top:14px;display:flex}.holiday-admin textarea{width:100%;margin-top:6px}@media (width<=900px){.holiday-layout{grid-template-columns:1fr}.holiday-day{grid-template-columns:1fr 1fr}.holiday-day-head{display:none}}.distribution-admin{gap:20px;display:grid}.distribution-projects{flex-wrap:wrap;gap:10px;padding:4px 0 12px;display:flex}.distribution-projects button{color:#46584f;background:#fff;border:1px solid #d9e0dc;border-radius:8px;padding:11px 20px}.distribution-projects button.selected{color:#fff;background:#254b39;border-color:#254b39}.distribution-admin .workspace-panel{padding:24px}.distribution-admin .grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;max-width:740px;display:grid}.distribution-admin .grid label:last-child{grid-column:1/-1}.distribution-admin .grid textarea{resize:vertical;width:100%}.distribution-admin .workspace-panel>a{color:#286848;margin-top:10px;font-weight:600;display:inline-block}.distribution-admin .workspace-table{overflow-x:auto}@media (width<=700px){.distribution-admin .grid{grid-template-columns:1fr}.distribution-admin .grid label:last-child{grid-column:auto}}.distribution-dependency-group{border-top:1px solid #e5ebe6;padding:15px 0}.distribution-dependency-group h3{margin:0 0 8px;font-size:13px}.distribution-dependency-row{background:#f7faf8;border-radius:8px;justify-content:space-between;align-items:center;gap:14px;margin:8px 0;padding:12px;display:flex}.distribution-dependency-row strong{font-size:12px;display:block}.distribution-dependency-row small{overflow-wrap:anywhere;margin-top:5px;display:block}.distribution-dependency-row button{flex:none}.distribution-admin form{margin-top:14px}@media (width<=700px){.distribution-dependency-row{display:block}.distribution-dependency-row button{margin-top:10px}}.distribution-admin .distribution-upload-hint{color:#315942;background:#eef5f0;border-radius:8px;grid-column:1/-1;margin:0;padding:10px 12px;font-size:13px}
