:root{--ink:#123b55;--blue:#087ca9;--teal:#08a4a8;--paper:#e7f5f7;--cream:#f3f8fa;--gold:#e4af42;--line:#cfe3e8;--muted:#617c88}*{box-sizing:border-box}body{min-height:100vh;margin:0;padding:36px 16px;background:linear-gradient(135deg,#e7f5f7,#fff 54%,#edf8f1);font-family:"Microsoft YaHei",sans-serif;color:var(--ink);border-top:5px solid var(--teal)}.shell{max-width:700px;margin:auto}.wide{max-width:860px}a{color:var(--blue);font-weight:800}.card{background:#fff;border:1px solid #d7e8ec;border-radius:18px;padding:24px;margin:20px 0;box-shadow:0 14px 38px rgba(8,124,169,.11)}h1{font:700 36px "Songti SC","STSong",serif;margin:20px 0 10px;color:#123b55}h2{font-size:21px;line-height:1.55}p{line-height:1.75}label{display:block;margin:16px 0;color:#426778;font-weight:700}input,textarea,select,button,.button{font:inherit;width:100%;border-radius:11px}input,textarea,select{border:1px solid #c7dde4;padding:13px 14px;margin-top:8px;background:#f9fcfd;color:#183e53;outline:none}input:focus,textarea:focus,select:focus{border-color:var(--teal);box-shadow:0 0 0 3px rgba(8,164,168,.13)}textarea{min-height:118px;resize:vertical}button,.button{border:0;background:linear-gradient(135deg,var(--blue),var(--teal));color:#fff;padding:14px;font-weight:800;text-align:center;text-decoration:none;cursor:pointer;box-shadow:0 9px 20px rgba(8,124,169,.18)}.row{display:flex;gap:12px}.row>*{flex:1}.ghost{background:#fff!important;color:var(--blue)!important;border:1px solid #82c0cf!important;box-shadow:none!important}.inline-referral{display:inline-block!important;width:auto!important;margin-left:10px;padding:4px 10px!important;border-radius:999px;font-size:13px!important;line-height:1.3;vertical-align:middle}.notice{background:#e8f7f5;border:1px solid #a8dad6;border-left:4px solid var(--teal);border-radius:12px;padding:14px;line-height:1.75;margin:16px 0;color:#28666d}.status{min-height:24px;text-align:center;color:var(--muted)}.progress{display:flex;gap:7px;flex-wrap:wrap;margin:20px 0}.progress i{font-style:normal;width:34px;height:34px;border:1px solid #bedce3;border-radius:50%;display:grid;place-items:center;color:#67838d;background:#fff}.progress .on{background:linear-gradient(135deg,var(--blue),var(--teal));color:#fff;border-color:var(--teal)}.progress .done{background:#dff4ee;color:#087b72;border-color:#9cddd1}pre{white-space:pre-wrap;font:inherit;line-height:1.8;background:#f3f9fa;border:1px solid #d9ebee;padding:18px;border-radius:12px;color:#183e53}@media(max-width:600px){body{padding:22px 12px}h1{font-size:29px}.row{flex-direction:column}}
.role-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:26px 0}.role-card{display:block;min-height:285px;padding:24px;border:2px solid #b8dfe4;border-radius:20px;background:#fff;box-shadow:0 12px 30px rgba(8,124,169,.09);color:var(--ink);text-decoration:none;transition:transform .18s,box-shadow .18s}.role-card:hover{transform:translateY(-4px);box-shadow:0 18px 36px rgba(8,124,169,.16)}.role-card span{display:grid;place-items:center;width:46px;height:46px;border-radius:14px;background:#e7f7f5;font-size:23px}.role-card h2{margin:18px 0 4px;color:var(--blue)}.role-card p{margin:0;color:#406d7a;font-weight:800}.role-card small{display:block;min-height:66px;margin:16px 0;color:var(--muted);line-height:1.7}.role-card b{color:var(--teal)}@media(max-width:700px){.role-grid{grid-template-columns:1fr}.role-card{min-height:0}.role-card small{min-height:0}}
.workbench-nav{display:flex;align-items:center;justify-content:space-between;gap:14px}.logout{width:auto!important;padding:5px 11px!important;background:#fff!important;color:var(--blue)!important;border:1px solid #82c0cf!important;box-shadow:none!important;font-size:13px!important;line-height:1.3}@media(max-width:600px){.workbench-nav{align-items:flex-start}.logout{padding:8px 12px}}.identity-card{margin-top:18px}.identity-note{color:var(--muted);font-size:14px}.role-options{display:flex;gap:10px;flex-wrap:wrap;margin:14px 0}.role-options label{display:inline-flex;align-items:center;gap:6px;margin:0;padding:8px 11px;border:1px solid #c7dde4;border-radius:999px;color:#426778;font-size:14px;font-weight:700}.role-options input{width:auto;margin:0}.save-roles{width:auto!important;padding:7px 13px!important;font-size:14px!important;box-shadow:none!important}@media(max-width:600px){.role-options{gap:8px}.role-options label{width:100%;justify-content:flex-start}}.workbench-nav{justify-content:flex-start}.workbench-nav .logout{margin-left:auto}.profile-link{padding:5px 10px;border:1px solid #c7dde4;border-radius:999px;font-size:13px;text-decoration:none}