*{box-sizing:border-box}body{margin:0;background:#f6f5ef;color:#173581;font:14px Arial}button,input,select,textarea{font:inherit}button,.button{display:inline-block;cursor:pointer;background:#173581;color:white;border:0;border-radius:10px;padding:12px 15px;font-weight:bold;text-decoration:none}button:disabled{opacity:.4;cursor:not-allowed}input:not([type=checkbox]):not([type=radio]):not([type=hidden]),select,textarea{width:100%;padding:12px;border:1px solid #dce0e9;border-radius:10px;background:white;color:#173581}input:focus,textarea:focus{outline:2px solid #ff449a}aside{position:fixed;inset:0 auto 0 0;width:230px;background:#fffdf6;padding:30px 20px;border-right:1px solid #e5e5e1}.brand{font-size:29px;font-weight:1000;letter-spacing:-1.5px}.brand span,.art h1 span{color:#ff449a}small,.muted,.sidefoot{color:#7e8498;font-size:11px;line-height:1.8}nav{display:grid;gap:12px;margin-top:40px}nav a{padding:14px;border-radius:10px;text-decoration:none;color:#173581;font-weight:bold}nav a.active{background:#173581;color:white;box-shadow:4px 4px #ffe44c}.sidefoot{margin-top:70px}main{margin-left:230px;padding:30px;max-width:1550px}h1{font-size:27px;letter-spacing:-1px;margin:10px 0 27px}h2{font-size:19px;margin:0 0 20px}h3{font-size:14px;margin:25px 0 12px}header,.between{display:flex;justify-content:space-between;align-items:center;gap:12px}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin:22px 0}.stat,.panel{background:white;border:1px solid #e8e7e1;border-radius:18px;padding:22px}.stat b{display:block;font-size:27px;margin:12px 0}.grid{display:grid;grid-template-columns:minmax(300px,.9fr) minmax(370px,1.2fr);gap:22px}.equal{grid-template-columns:1fr 1fr}.panel{margin-bottom:22px}.choices{display:grid;grid-template-columns:1fr 1fr;gap:9px}.choice{display:flex;align-items:center;gap:8px;padding:13px 9px;border:1px solid #e1e3ed;border-radius:12px;font-size:12px;cursor:pointer}.choice:has(input:checked){border-color:#ff449a;background:#fff0f7}.choice input{accent-color:#ff449a}.row{display:flex;gap:10px;align-items:end}.row>div{flex:1;min-width:0}.row>input{flex:1;min-width:0}.row>button{flex-shrink:0}label:not(.choice){display:block;font-size:11px;color:#737b90;margin:12px 0 7px}.primary{width:100%;box-shadow:4px 4px #ff449a}.secondary{background:#eef0f7;color:#173581}.done{background:#c9ef67;color:#173581}.notice{background:#eaf0ff;padding:15px;border-radius:12px;font-size:12px;line-height:1.8;margin:20px 0}.error{color:#c5316a;line-height:1.8}.pill{font-size:10px;border-radius:20px;padding:7px 10px;background:#ffe8f3;color:#d42c7d}.order{padding:18px;border:1px solid #e5e6ed;border-left:4px solid #ff449a;border-radius:14px;margin-top:14px}.order p{line-height:1.8}.tag{font-size:10px;background:#f1f2f8;padding:5px 8px;border-radius:6px}.foot{border-top:1px dashed #ddd;padding-top:15px;margin-top:15px}.empty{text-align:center;padding:40px 10px;color:#838b9d}.scroll{overflow:auto}table{width:100%;border-collapse:collapse;font-size:12px;white-space:nowrap}th,td{padding:15px 9px;border-bottom:1px solid #eee;text-align:left}th{color:#84899b;font-size:10px}.catalog{border-top:1px solid #eee;padding:12px 0;margin-top:15px}.catalog>form+form{margin-top:10px}.catalog button{font-size:11px}.confirmation{border:3px solid #ff449a}.login{display:grid;grid-template-columns:1fr 1fr;min-height:100vh}.art{background:#ffe44c;padding:65px;display:flex;flex-direction:column;justify-content:center;border-right:3px solid #173581}.art h1{font-size:65px;line-height:1.05;margin:40px 0}.loginbox{display:grid;place-items:center;padding:30px}.loginbox .panel{max-width:400px;width:100%}.setup{margin:30px auto;max-width:600px}footer{text-align:center;font-size:10px;color:#8990a1;margin:25px}a{color:#173581}@media(max-width:1100px){.grid{grid-template-columns:1fr}}@media(max-width:700px){aside{position:static;width:100%;padding:18px}nav{grid-template-columns:1fr 1fr;margin-top:20px;gap:8px}nav a{font-size:11px;text-align:center;padding:11px}.sidefoot{display:none}main{margin:0;padding:18px}.stats{grid-template-columns:1fr 1fr;gap:10px}.stat{padding:16px}.stat b{font-size:23px}.panel{padding:18px}.login{grid-template-columns:1fr}.art{padding:30px}.art h1{font-size:38px;margin:20px 0}.row{flex-wrap:wrap}.foot{flex-wrap:wrap}.setup{margin:0}}

/* Native modal: external JS is compatible with script-src self. */
.order-modal{width:min(94vw,480px);max-height:90vh;overflow:auto;border:2px solid #173581;border-radius:20px;padding:25px;color:#173581;background:#fffdf6;box-shadow:7px 7px 0 #ff449a}
.order-modal::backdrop{background:rgba(13,25,64,.65);backdrop-filter:blur(3px)}
.order-modal h2{margin:23px 0 14px;font-size:22px}
.order-modal p{font-size:14px;line-height:1.8;margin-bottom:25px}
.order-modal .modal-close{flex-shrink:0}
.modal-actions{display:flex;gap:10px;justify-content:flex-end;flex-wrap:wrap}
.modal-actions button{white-space:normal}
button:disabled{cursor:wait;opacity:.6}
@media(max-width:600px){.order-modal{padding:20px}.modal-actions{flex-direction:column}.modal-actions button{width:100%}}
