/* Artisan_Plus presentation layer · visual only */
:root{--ap-elev-1:0 10px 30px rgba(9,38,58,.07);--ap-elev-2:0 20px 55px rgba(9,38,58,.11)}
html{font-size:16px}body{background:linear-gradient(180deg,#f6f9fa 0,#f2f6f8 100%);text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}
.app-shell{min-height:100vh}.sidebar{border-right:1px solid #d9e4e9;box-shadow:8px 0 30px rgba(13,42,61,.045)}
.sidebar .brand{min-height:76px;padding-top:18px;padding-bottom:18px}.sidebar .brand .mark{box-shadow:0 10px 28px color-mix(in srgb,var(--brand) 22%,transparent)}
.sidebar-label{margin-top:18px;padding-top:10px;font-size:.68rem;letter-spacing:.12em;color:#82929c}
.nav-item{border-radius:11px;margin:2px 8px;padding:10px 11px;transition:background .15s ease,transform .15s ease}.nav-item:hover{transform:translateX(2px)}.nav-item.active{box-shadow:inset 3px 0 0 var(--brand)}
.sidebar-foot{margin:16px 10px 10px;padding:14px;border:1px solid #dbe5ea;border-radius:14px;background:#f8fbfc}.sidebar-foot small{line-height:1.45}
.workarea{min-width:0}.topbar{min-height:72px;border-bottom:1px solid #d9e4e9;background:rgba(255,255,255,.94);backdrop-filter:blur(12px);box-shadow:0 7px 24px rgba(14,45,65,.035)}
.global-search{max-width:620px}.global-search input{border-radius:11px;border-color:#d3dfe5;background:#f8fafb;padding:11px 13px}.global-search input:focus{background:#fff;box-shadow:0 0 0 3px color-mix(in srgb,var(--brand) 13%,transparent);border-color:var(--brand)}
.top-actions{gap:10px}.top-actions .online{padding:6px 9px;border-radius:999px;background:#edf8f3;color:#166344;font-size:.75rem;font-weight:800}
.content{padding:clamp(18px,2.4vw,34px);max-width:1680px;margin-inline:auto;width:100%}
.panel,.hf-section,.record-card,.choice,.module-card,.schema-card,.paper{border-color:#dbe5ea;box-shadow:var(--ap-elev-1)}
.panel,.hf-section{border-radius:17px}.panel:hover,.record-card:hover,.module-card:hover{box-shadow:var(--ap-elev-2)}
.panel-head{gap:18px;padding-bottom:11px;border-bottom:1px solid #eef2f4}.panel-head h1,.panel-head h2,.panel-head h3{letter-spacing:-.02em}.panel-head p{line-height:1.55}
.btn,button{border-radius:10px;font-weight:800;transition:transform .15s ease,box-shadow .15s ease}.btn:hover,button:hover{transform:translateY(-1px)}
.btn.primary,button.primary{box-shadow:0 8px 20px color-mix(in srgb,var(--brand) 20%,transparent)}
input,select,textarea{border-radius:10px;border-color:#cbd8df;background:#fff;min-height:42px}textarea{min-height:105px}input:focus,select:focus,textarea:focus{outline:0;border-color:var(--brand);box-shadow:0 0 0 3px color-mix(in srgb,var(--brand) 12%,transparent)}
.field>label,.field>span,label>span{font-weight:800;color:#314b5b}.field small{line-height:1.45}
.table-wrap{border:1px solid #dbe5ea;border-radius:14px;background:#fff;box-shadow:0 8px 24px rgba(12,43,62,.045)}table{background:#fff}th{background:#f7fafb;color:#5c707c;font-size:.72rem;letter-spacing:.055em}td,th{padding:12px 13px}tbody tr:hover{background:#fbfdfd}
.pill,.module-state{font-weight:850;letter-spacing:.01em}
.hf-kpi-grid article,.hf-attention-grid article,.hf-action-grid article,.hf-trade-card{box-shadow:0 10px 28px rgba(12,43,62,.055);transition:transform .15s ease,box-shadow .15s ease}.hf-kpi-grid article:hover,.hf-action-grid article:hover,.hf-trade-card:hover{transform:translateY(-2px);box-shadow:0 17px 38px rgba(12,43,62,.085)}
.hf-section-head h2{letter-spacing:-.025em}.hf-section-head p{max-width:760px;line-height:1.55}
.job-banner{border-radius:17px;box-shadow:var(--ap-elev-1)}
.paper{background:#fff}.document-canvas{box-shadow:0 20px 60px rgba(13,42,61,.1)}
:where(.app-shell,.signed-out) :where(h1,h2,h3,h4,p,span,strong,small,label,a,button,summary,td,th){overflow-wrap:break-word;word-break:normal;hyphens:auto}
@media(max-width:900px){.content{padding:18px}.topbar{min-height:64px}.global-search{max-width:none}.sidebar{box-shadow:14px 0 50px rgba(9,34,51,.16)}}
@media(max-width:620px){html{font-size:15.5px}.content{padding:14px}.panel,.hf-section{border-radius:14px}.topbar{padding-inline:10px}.global-search input{min-width:0}.hf-section-head{gap:8px}.btn,button{min-height:42px}}
@media print{.panel,.hf-section,.paper,.document-canvas{box-shadow:none!important}}
