:root{--teal:#10b9ae;--blue:#3b67c4;--sidebar:#27323d;--muted:#909399;--border:#eee;--surface:#fff;--bg:#f4f4f4}*{box-sizing:border-box}body{margin:0;color:#303133;font:14px/1.5 -apple-system,BlinkMacSystemFont,"Segoe UI","Microsoft YaHei",Arial,sans-serif;background:var(--bg)}button,input,select{font:inherit}button,a{ -webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}button:focus-visible,a:focus-visible{outline:2px solid var(--teal);outline-offset:-2px}a{color:inherit;text-decoration:none}svg{width:18px;height:18px;stroke:currentColor;stroke-width:1.6;fill:none;vertical-align:middle}.icon-defs{position:absolute;width:0;height:0;overflow:hidden}#sidebar{position:fixed;inset:0 auto 0 0;width:230px;background:var(--sidebar);color:#bcc2c7;z-index:30;box-shadow:2px 0 7px #0002;display:flex;flex-direction:column;transition:transform .2s}.brand{height:60px;display:flex;align-items:center;padding-left:38px;color:var(--blue);font-size:24px;font-weight:700;flex-shrink:0;gap:4px}.brand span{font-size:22px}.sidebar-foot{padding:15px 22px;color:#82909a;font-size:12px;margin-top:auto}#side-menu{overflow:auto;flex:1;padding:5px 0}.nav-item{width:100%;min-height:53px;display:flex;align-items:center;gap:12px;padding:12px 20px;color:inherit;border:0;background:none;text-align:left;font-size:14px}.nav-item:hover{color:#fff;background:#ffffff08}.nav-item.active{background:var(--blue);color:#fff}.nav-item svg{width:15px;height:15px;flex-shrink:0}.nav-item small{font-size:10px;margin-left:auto;color:#bac3ce;border:1px solid #ffffff25;padding:0 4px;border-radius:3px}.nav-group summary{padding:16px 21px;cursor:pointer;list-style:none}.nav-group summary:after{content:'⌄';float:right;font-size:12px}.nav-group[open] summary:after{content:'⌃'}.nav-group .nav-item{padding-left:42px;min-height:45px;font-size:13px}.nav-group .nav-item svg{width:12px;height:12px}.top-actions{display:flex;align-items:center;margin-left:auto}.icon-button{position:relative;width:50px;height:60px;flex-shrink:0;border:0;background:#fff;color:#263442}.icon-button:hover{background:#f6f6f6}.icon-button sup{position:absolute;top:6px;right:6px;background:#ff5722;color:#fff;line-height:17px;padding:0 6px;border-radius:12px;font-size:11px}#topbar{height:60px;position:fixed;top:0;right:0;left:230px;background:#fff;display:flex;align-items:center;border-bottom:1px solid #f4f4f4;z-index:20;transition:left .2s}#categories{display:flex;align-items:stretch;overflow-x:auto;scrollbar-width:none;height:60px;min-width:0;flex:1}#categories button{flex-shrink:0;border:0;border-bottom:2px solid transparent;background:#fff;padding:0 17px;color:#263442;white-space:nowrap}#categories button.active{background:#f6f6f6;border-bottom-color:var(--blue)}.account{position:relative;margin-right:10px}.account summary{list-style:none;cursor:pointer;padding:18px 13px}.account>div{position:absolute;right:0;top:54px;background:#fff;box-shadow:0 3px 15px #0002;width:170px;padding:8px;border:1px solid #eee}.account strong,.account a{display:block;padding:9px 12px}.account a:hover{background:#f5f5f5}.workspace{position:fixed;inset:60px 0 0 230px;display:flex;flex-direction:column;transition:left .2s}#tabs{height:41px;flex-shrink:0;display:flex;background:#fff;border-bottom:1px solid var(--border);overflow:auto;scrollbar-width:none}.page-tab{display:flex;align-items:center;white-space:nowrap;border-right:1px solid #f1f1f1}.page-tab>button:first-child{height:40px;padding:0 16px;background:none;border:0;color:#777}.page-tab.active>button:first-child{color:var(--blue)}.page-tab>button:first-child:before{content:'●';font-size:9px;color:#ddd;margin-right:12px}.page-tab.active>button:first-child:before{color:var(--blue)}.close-tab{border:0;background:none;color:#999;padding:0 10px 0 0;font-size:18px}#frames{flex:1;position:relative;min-height:0}#frames iframe{width:100%;height:100%;border:0;display:block;background:var(--bg)}#frames iframe[hidden]{display:none}.loading{padding:50px;text-align:center;color:#999}.portal-shell.collapsed #sidebar{transform:translateX(-230px)}.portal-shell.collapsed #topbar{left:0}.portal-shell.collapsed .workspace{left:0}dialog{border:0;border-radius:5px;width:min(520px,92vw);padding:0;box-shadow:0 6px 30px #0003;color:#333}dialog::backdrop{background:#0004}dialog header{padding:16px 22px;border-bottom:1px solid #eee}.dialog-close{float:right;border:0;background:none;color:#999;font-size:22px;line-height:20px}dialog input{width:calc(100% - 40px);margin:20px;border:1px solid #ddd;padding:12px;border-radius:3px}#search-results{max-height:360px;overflow:auto;padding:0 20px 20px}#search-results button,#notice-list button{display:block;width:100%;padding:12px;text-align:left;background:none;border:0;border-bottom:1px solid #f3f3f3;color:#333}#search-results button:hover,#notice-list button:hover{background:#f4f8fb}#notice-list{padding:14px 20px 24px}#portal-toast{position:fixed;z-index:100;top:85px;left:50%;transform:translateX(-50%);padding:12px 20px;background:#263442ed;color:#fff;border-radius:4px}
/* Inner business pages retain their original controls and endpoints. */
.portal-page{padding:10px;background:var(--bg);min-height:100vh}.panel-card{background:#fff;border:1px solid #f0f0f0;border-radius:4px;margin-bottom:10px}.panel-title{padding:12px 15px;border-bottom:1px solid #f3f3f3;font-size:14px;font-weight:400;margin:0}.panel-body{padding:20px}.metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:10px}.metric{background:#fff;border-radius:4px;border:1px solid #f0f0f0;min-width:0}.metric h2{text-align:center;font-size:14px;font-weight:400;margin:0;padding:11px 5px;border-bottom:1px solid #f5f5f5}.metric-content{display:flex;align-items:center;min-height:78px;padding:8px 15px}.metric strong{font-size:30px;font-weight:400;text-align:center;flex:1;min-width:0;overflow-wrap:anywhere}.metric small{font-size:13px;color:#999}.metric-icon{border-left:1px solid #e9ecff;padding-left:20px;margin-left:10px}.metric-icon span{display:grid;place-items:center;width:50px;height:50px;border-radius:15px;background:#dcf5ef;color:var(--teal);font-size:30px}.metric:nth-child(4) strong{color:#1684ff}.dashboard-bottom{display:grid;grid-template-columns:3fr 1fr;gap:10px}.chart{height:380px;width:100%}.brand-card{text-align:center;padding:25px 12px;height:180px}.smile{display:block;margin:0 auto 8px;width:82px;height:82px;border:6px solid var(--teal);border-radius:50%;position:relative;color:var(--teal)}.smile:before{content:'••';font-size:35px;letter-spacing:12px;position:absolute;left:16px;top:1px}.smile:after{content:'';position:absolute;bottom:15px;left:21px;width:28px;height:18px;border:4px solid var(--teal);border-top:0;border-radius:0 0 25px 25px}.muted{color:#999;font-size:12px}.stats-note{padding:10px 15px;color:#999;font-size:12px}.filterbar{display:flex;gap:12px;flex-wrap:wrap;align-items:center;padding:18px 20px;background:#fff;border:1px solid #eee;margin-bottom:10px}.filterbar input,.filterbar select{padding:8px 12px;border:1px solid #ddd;border-radius:3px;min-height:36px}.primary-btn{border:1px solid var(--teal);background:var(--teal);color:#fff;padding:8px 18px;border-radius:3px}.plain-btn{border:1px solid #ddd;background:#fff;color:#666;padding:8px 18px;border-radius:3px}.status-note{padding:13px 18px;background:#f5faff;border-left:3px solid #88b9e9;color:#526d88;font-size:13px}.pending-view{padding:60px 20px 85px;text-align:center;color:#999}.pending-view svg{width:58px;height:58px;color:#b8c7d4;margin-bottom:12px}.pending-view h2{font-size:17px;color:#666;font-weight:400}.data-table{border-collapse:collapse;width:100%;background:#fff}.data-table th{font-weight:400;background:#f8f8f8;color:#555}.data-table th,.data-table td{border-bottom:1px solid #eee;padding:13px 16px;text-align:left}.data-table tbody tr:hover{background:#fbfcfd}.data-table img{width:46px;height:46px;object-fit:cover;border-radius:5px}.table-scroll{overflow:auto}.table-footer{padding:15px 20px;color:#999;display:flex;gap:12px;align-items:center}.state-pill{display:inline-block;font-size:12px;padding:2px 8px;color:#0eaa96;background:#e5f6f2;border-radius:3px}.error-message{color:#c45656;padding:20px}
@media(max-width:1150px){#categories button{padding:0 11px}.icon-button{width:40px}.top-actions #fullscreen{display:none}}@media(max-width:767px){#sidebar{transform:translateX(-230px)}#topbar{left:0}.workspace{left:0}.portal-shell.mobile-menu #sidebar{transform:translateX(0)}.portal-shell.mobile-menu #topbar{left:230px}.top-actions .icon-button{display:none}.metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.metric strong{font-size:24px}.metric-icon{padding-left:10px;margin-left:5px}.metric-icon span{width:36px;height:36px;font-size:24px}.dashboard-bottom{grid-template-columns:1fr}.brand-card{display:none}.chart{height:300px}.account{margin-right:0}}
