.company-stock-page{max-width:1400px;margin:auto;color:#183249}.cs-header{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:22px}.cs-eyebrow{font-size:10px;color:#8a99a8;letter-spacing:.07em}.cs-header h1{font-size:28px;margin:6px 0}.cs-header p{font-size:12px;color:#8091a3;margin:0;line-height:1.8}.cs-values{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;margin-bottom:14px}.cs-value{background:#fff;border:1px solid #e2e9f0;border-radius:15px;padding:20px;min-width:0}.cs-value>span{color:#7f90a1;font-size:12px;display:block}.cs-value strong{display:block;font-size:24px;margin:13px 0 6px;overflow-wrap:anywhere}.cs-value small{font-size:10px;color:#a0acb8}.cs-value.general strong{color:#197e6f}.cs-value.project strong{color:#477ead}.cs-note{font-size:11px;color:#8495a5;line-height:1.9;margin:12px 0 20px}.cs-tabs{display:flex;gap:7px;border-bottom:1px solid #e0e8ef;margin-block:20px;overflow:auto}.cs-tabs button{border:0;border-bottom:3px solid transparent;background:transparent;border-radius:10px 10px 0 0;padding:13px 18px;font:inherit;font-size:12px;color:#7f90a2;cursor:pointer;white-space:nowrap}.cs-tabs [aria-pressed=true]{background:#ecf6f1;color:#287d6b;border-color:#348c78}.cs-filters{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.cs-filters .input{flex:2;min-width:160px}.cs-filters .select{flex:1;min-width:130px}.cs-hide-empty{display:flex;gap:7px;align-items:center;font-size:11px;color:#8b9aaa}.cs-caption{font-size:11px;color:#8a9bad;margin:15px 0}.cs-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.cs-stock-card{border:1px solid #e2e9f0;border-radius:16px;background:#fff;padding:20px;min-width:0}.cs-stock-head{display:flex;align-items:center;gap:13px}.cs-stock-head>div{flex:1;min-width:0}.cs-stock-head h2{font-size:18px;margin:0 0 8px;overflow-wrap:anywhere}.cs-material-icon{width:43px;height:43px;display:grid;place-items:center;flex:0 0 43px;background:#f0f4f8;color:#6a8399;border-radius:12px;font-size:25px}.cs-stock-head>strong{font-size:22px;overflow-wrap:anywhere;max-width:35%}.cs-stock-head small{font-size:11px;font-weight:500;color:#8b9aaa}.cs-place{display:inline-block;font-size:10px;color:#6b8bad;background:#edf3fa;border-radius:6px;padding:4px 7px;line-height:1.7}.cs-place.general{background:#ecf7f0;color:#328672}.cs-stock-value{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:19px;padding-top:15px;border-top:1px solid #edf2f6;font-size:12px}.cs-stock-value>span{font-size:11px;color:#90a0af}.cs-stock-value>bdi{font-weight:700;color:#486c83}.cs-stock-details{border-top:1px solid #edf2f6;margin-top:15px;padding-top:12px}.cs-stock-details>summary{font-size:11px;cursor:pointer;color:#759183}.cs-stock-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:13px}.cs-stock-actions .btn{font-size:11px;border-radius:10px;min-height:38px}.cs-empty{grid-column:1/-1;border:1px dashed #d9e3ec;background:#fff;border-radius:15px;text-align:center;padding:40px 20px}.cs-empty h3{font-size:17px}.cs-empty p{font-size:12px;line-height:1.9;color:#91a2b2}.cs-move-source{padding:16px 21px;background:#f6f9fb;border-block:1px solid #e9eff4}.cs-move-source strong{font-size:18px}.cs-move-source p{font-size:12px;color:#7c91a4;margin:8px 0 0}.cs-move-modal{max-width:720px;max-height:92dvh;overflow:auto}.cs-purchase-scope{background:#f5faf7;border:1px solid #deebe3;border-radius:12px;padding:14px!important}.cs-purchase-scope .small{margin-bottom:0;font-size:11px}.cs-history-modal{max-width:800px;max-height:92dvh;overflow:auto}.cs-history-list{padding:16px}.cs-history-row{padding:17px 5px;border-bottom:1px solid #e9eff5}.cs-history-row>div{display:flex;justify-content:space-between;align-items:center;gap:12px}.cs-history-row>div>span{font-size:10px;color:#8b9dad}.cs-history-row p{font-size:12px;color:#7f91a3;line-height:1.9}.cs-history-row>.btn{margin-top:12px;font-size:11px}.company-stock-page [hidden],.cs-move-modal [hidden]{display:none!important}@media(max-width:650px){.cs-header{flex-direction:column;align-items:stretch}.cs-header h1{font-size:24px}.cs-header .btn{font-size:12px;align-self:flex-start}.cs-values{gap:7px}.cs-value{padding:13px 10px;border-radius:12px}.cs-value>span{font-size:9px}.cs-value strong{font-size:16px;margin-top:10px}.cs-value small{font-size:8px}.cs-note{font-size:10px}.cs-tabs{gap:0}.cs-tabs button{font-size:11px;padding-inline:11px}.cs-list{grid-template-columns:1fr;gap:12px}.cs-stock-card{padding:17px}.cs-filters .input{flex-basis:100%}.cs-stock-head h2{font-size:17px}.cs-stock-head>strong{font-size:20px}.cs-history-row>div>span{font-size:9px}.cs-stock-value>span{font-size:10px}.cs-stock-value>bdi{font-size:12px}}

[data-company-stock-purchase] [hidden]{display:none!important}

/* Stock V3: scoped presentation; existing stock forms retain their behaviour. */
.cs-analysis-entry{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin:18px 0}.cs-analysis-entry>span{font-size:12px;color:#635b76}
.sa-modal{width:min(1100px,calc(100vw - 24px));max-width:1100px;min-width:0;max-height:92dvh;overflow:auto;padding:0;background:#fcfaff;color:#332544;box-sizing:border-box}.sa-modal *{box-sizing:border-box;min-width:0}.sa-modal .ui-dialog-head{position:sticky;top:0;z-index:2;background:white}.sa-body{padding:22px;overflow-wrap:anywhere}.sa-body h3{font-size:16px;margin:18px 0 12px}.sa-hero{border-radius:18px;padding:20px 22px;background:linear-gradient(120deg,#6e3fb2,#9367d3);color:white;margin-bottom:16px}.sa-hero>span{font-size:10px;letter-spacing:.15em}.sa-hero h3{font-size:21px;line-height:1.5;margin:8px 0}.sa-hero p{font-size:12px;line-height:1.8;margin:6px 0}.sa-filters,.sa-panel{background:white;border:1px solid #e6dff0;border-radius:14px;padding:16px;margin:14px 0}.sa-filters>summary,.sa-panel>summary{cursor:pointer;font-size:14px;font-weight:650;min-height:28px;line-height:1.7}.sa-filters summary>span{display:block;font-size:11px;font-weight:400;color:#6b5d7c;margin-top:6px}.sa-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:20px}.sa-field{display:flex;flex-direction:column;gap:6px;font-size:12px}.sa-field .input,.sa-field .select{width:100%;max-width:100%;min-height:44px}.sa-actions{display:flex;align-items:center;flex-wrap:wrap;gap:9px;margin-top:14px}.sa-actions .btn{min-height:42px}.sa-export{justify-content:flex-end}.sa-export>span{margin-inline-end:auto;font-size:12px;color:#746783}.sa-kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:16px 0}.sa-kpis article{background:white;border:1px solid #e4d9f2;border-radius:16px;padding:18px}.sa-kpis article>span{font-size:12px;color:#6e607b}.sa-kpis strong{display:block;font-size:24px;color:#6633a6;line-height:1.5;margin:10px 0}.sa-kpis small{font-size:10px;color:#776985}.sa-note{font-size:12px;line-height:1.9;color:#6f637d}.sa-warning,#sa-error:not(:empty){font-size:12px;line-height:1.8;color:#8a4a14;background:#fff4df;padding:12px;border-radius:10px}.sa-materials{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.sa-material{background:white;border:1px solid #e3d9ef;border-radius:14px;padding:16px;align-self:start}.sa-material>summary{display:flex;justify-content:space-between;align-items:center;gap:12px;cursor:pointer;min-height:44px}.sa-material summary strong{font-size:15px}.sa-material summary>span:last-child{text-align:end;font-weight:700;color:#6538a3}.sa-material small,.sa-line small,.sa-movement small{display:block;font-size:11px;color:#81718e;font-weight:400;margin-top:5px;line-height:1.6}.sa-mini-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;background:#f8f5fd;padding:12px;border-radius:10px;margin:16px 0}.sa-mini-grid span{display:block;font-size:10px;color:#79668b;margin-bottom:4px}.sa-mini-grid bdi{font-size:13px}.sa-charts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.sa-charts .sa-panel{margin-bottom:0}.sa-bar-row{margin:14px 0}.sa-bar-row>div:first-child{display:flex;justify-content:space-between;gap:10px;font-size:11px;line-height:1.6;margin-bottom:5px}.sa-track{height:8px;border-radius:5px;background:#f0eaf8;overflow:hidden}.sa-track span{height:100%;display:block;border-radius:5px;background:linear-gradient(90deg,#a681d9,#7040b1)}.sa-track .negative{background:#bf5566}.sa-line{display:flex;align-items:baseline;justify-content:space-between;gap:15px;padding:12px 0;border-bottom:1px solid #eee8f4;font-size:12px;line-height:1.7}.sa-line>span:last-child{text-align:end}.sa-movement{width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;text-align:start;border:0;border-bottom:1px solid #eee8f4;background:white;padding:14px 4px;color:inherit;cursor:pointer;font:inherit;font-size:12px}.sa-movement:hover{background:#faf7ff}.sa-movement>span:last-child{text-align:end}.sa-movement.cancelled{color:#897f93;background:#faf9fc}.sa-movement.cancelled strong{text-decoration:line-through}.sa-empty{padding:25px;text-align:center;color:#786b87}.sa-modal [hidden]{display:none!important}.sa-modal summary:focus-visible,.sa-modal button:focus-visible{outline:3px solid #b695e0;outline-offset:3px}
@media(max-width:650px){.sa-modal{width:calc(100vw - 12px);max-height:calc(100dvh - 20px);border-radius:16px}.sa-body{padding:12px}.sa-hero{padding:17px}.sa-hero h3{font-size:18px}.sa-grid{grid-template-columns:1fr}.sa-kpis{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.sa-kpis article{padding:13px}.sa-kpis article:first-child{grid-column:1/-1}.sa-kpis strong{font-size:21px}.sa-materials,.sa-charts{grid-template-columns:1fr}.sa-panel{padding:13px}.sa-material{padding:13px}.sa-line{flex-wrap:wrap}.sa-line>span:last-child{text-align:start}.sa-movement>span:first-child{flex:1}.sa-movement>span:last-child{max-width:42%}.sa-modal .btn{white-space:normal;max-width:100%}.cs-analysis-entry{align-items:flex-start;flex-direction:column}}

.cs-lots{margin:16px;padding:16px;background:#f6faf8;border:1px solid #e1eee7;border-radius:12px}.cs-lots h3{font-size:14px;margin:0}.cs-lots .cs-note{margin:8px 0}.cs-lot{display:flex;justify-content:space-between;gap:12px;padding:12px 0;border-top:1px solid #e0eae3;font-size:11px;flex-wrap:wrap}.cs-lot small{display:block;font-size:10px;color:#82948b;margin-top:6px}

/* Keep mobile search above the fixed navigation, without hiding or moving controls. */
@media(max-width:600px){
 .app-ui main.ui-content .company-stock-page .cs-header{margin-bottom:12px}
 .app-ui main.ui-content .company-stock-page .cs-values{gap:8px;margin-bottom:8px}
 .app-ui main.ui-content .company-stock-page .cs-value{padding:10px}
 .app-ui main.ui-content .company-stock-page .cs-value strong{margin-block:4px}
 .app-ui main.ui-content .company-stock-page .cs-value:first-child:nth-last-child(3){display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:8px;align-items:center}
 .app-ui main.ui-content .company-stock-page .cs-value:first-child:nth-last-child(3)>small{grid-column:1/-1}
 .app-ui main.ui-content .company-stock-page .cs-note{margin-block:8px 12px;line-height:1.6}
 .app-ui main.ui-content .company-stock-page .cs-tabs{margin-block:12px}
 .app-ui .ui-route-inventory input[type=search]{scroll-margin-block:80px calc(96px + env(safe-area-inset-bottom,0px))}
 html:has(.ui-route-inventory){scroll-padding-bottom:calc(96px + env(safe-area-inset-bottom,0px))}
}

/* Stock V3.1: compact quantity alerts use the same cards for every authorized account. */
.cs-level{display:inline-block;font-size:12px;font-weight:700;padding:3px 7px;margin:5px 4px 0 0;border-radius:6px}
.cs-level-low{color:#854d0e;background:#fef3c7}.cs-level-empty{color:#9f1239;background:#ffe4e6}.cs-level-negative{color:#991b1b;background:#fee2e2}
.cs-stock-card[data-stock-level=NEGATIVE]{border-inline-start:3px solid #b91c1c}
.cs-minimum{margin:8px 0;color:#56617a;font-size:12px}.cs-operations{margin-top:20px;border-top:1px solid #e6e0f3;padding-top:12px}.cs-operations h2,.cs-embedded h2{font-size:16px}
.app-ui main.ui-content .company-stock-page .cs-stock-actions{display:flex;flex-wrap:wrap;gap:8px}
.app-ui main.ui-content .company-stock-page .cs-stock-card{padding:12px}
.cs-sections button{font-size:13px}.cs-stock-head>div{min-width:0}.cs-stock-head h2{overflow-wrap:anywhere}
@media(max-width:600px){.app-ui main.ui-content .company-stock-page .cs-filters{grid-template-columns:minmax(0,1fr)}.cs-stock-head{flex-wrap:wrap}.cs-stock-head>strong{margin-inline-start:auto}.cs-embedded .cs-stock-card{margin-bottom:10px}}

/* Stock V3.1 final: wrap the full alerts label and keep mobile controls compact. */
.app-ui main.ui-content .company-stock-page .cs-sections button{white-space:normal;line-height:1.4;padding:8px;min-height:44px}
@media(max-width:600px){
 .app-ui main.ui-content .company-stock-page .cs-tabs{margin-block:8px}
 .app-ui main.ui-content .company-stock-page .cs-caption{margin-block:8px}
 .app-ui main.ui-content .company-stock-page .cs-stock-details{margin-top:4px;padding-top:4px}
 .app-ui main.ui-content .company-stock-page .cs-minimum{margin-block:6px}
 .app-ui main.ui-content .company-stock-page .cs-operations{margin-top:12px;padding-top:8px}
 .app-ui main.ui-content .company-stock-page .cs-operations h2{margin-block:8px}
}
