.campaign-page{width:min(1800px,100%);margin:auto;padding:30px;color:var(--text,#f4f6f2);box-sizing:border-box}.campaign-page *{box-sizing:border-box}.campaign-head{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:24px}.campaign-head small{color:var(--accent,var(--accent));font-size:11px;font-weight:800;letter-spacing:.17em}.campaign-head h1{margin:8px 0;font-size:clamp(30px,4vw,48px);letter-spacing:-.05em;line-height:1}.campaign-head p{max-width:820px;margin:0;color:#9ca59b;line-height:1.55}.campaign-layout{display:grid;grid-template-columns:minmax(300px,360px) minmax(0,1fr);gap:22px}.campaign-controls,.campaign-stage,.tech-card,.tech-preview-wrap{border:1px solid #303630;border-radius:16px;background:#111511}.campaign-controls{align-self:start;padding:18px;max-height:calc(100vh - 170px);overflow:auto;scrollbar-width:thin}.campaign-controls label,.form-grid label,.notes-grid label{display:flex;flex-direction:column;gap:7px;margin:13px 0;color:#d8ddd6;font-size:13px}.campaign-controls textarea,.campaign-controls select,.campaign-controls input,.form-grid input,.form-grid select,.notes-grid textarea,.color-row input,.tech-table input,.tech-table select{width:100%;min-width:0;border:1px solid #343b34;border-radius:9px;background:#080b08;color:#f3f6f1;padding:10px;font:inherit}.campaign-controls textarea{min-height:120px;resize:vertical}.campaign-controls details{margin:18px 0;border-top:1px solid #2e342e;padding-top:15px}.campaign-controls summary{cursor:pointer;color:#f2f4f1;font-size:13px;font-weight:800}.campaign-controls .check{flex-direction:row;align-items:center}.campaign-controls .check input{width:18px;height:18px;accent-color:var(--accent,var(--accent))}.campaign-controls>.btn{width:100%;margin-top:8px}.big-cta{min-height:50px;text-transform:uppercase;letter-spacing:.06em}.campaign-drop{min-height:150px;display:grid;place-content:center;gap:8px;padding:20px;border:1px dashed #50634a;border-radius:13px;text-align:center;background:#0c120b;cursor:pointer;transition:border-color .2s,background .2s}.campaign-drop:hover,.campaign-drop.drag{border-color:var(--accent,var(--accent));background:#152013}.campaign-drop strong{font-size:16px}.campaign-drop span,.privacy-note,.section-note{color:#899488;font-size:12px;line-height:1.55}.campaign-file{margin:0 0 12px;padding:12px;border:1px solid #313a2e;border-radius:11px;background:#0b0e0b}.campaign-file>span{display:block;margin-bottom:10px;color:#c9d1c6;font-size:12px;line-height:1.45;overflow-wrap:anywhere}.campaign-file>div{display:flex;gap:7px}.campaign-file .btn{flex:1;padding:7px;font-size:12px}.campaign-mode{display:grid;grid-template-columns:1fr 1fr;gap:5px;margin:15px 0}.campaign-mode button,.preset-grid button{border:1px solid #313831;border-radius:9px;background:#090c09;color:#a8b0a6;padding:10px;cursor:pointer;text-align:left}.campaign-mode button{min-height:43px;text-align:center}.campaign-mode .active,.preset-grid .active{border-color:var(--accent,var(--accent));background:#192416;color:#d9ffc3}.preset-grid{display:grid;grid-template-columns:1fr 1fr;gap:6px;max-height:225px;overflow:auto;margin:14px 0}.preset-grid button{font-size:12px}.campaign-stage{min-width:0;padding:18px;display:flex;flex-direction:column}.compare,.motion-player{position:relative;display:grid;place-items:center;min-height:560px;overflow:hidden;border:1px solid #2d332d;border-radius:13px;background:radial-gradient(circle at 50% 30%,#172015,#080b08 67%)}.compare canvas,.motion-player canvas{display:block;max-width:100%;max-height:72vh;width:auto;height:auto}.result-empty{position:absolute;inset:0;display:grid;place-content:center;gap:9px;padding:30px;text-align:center;color:#7f897d}.result-empty b{color:#eef2ec;font-size:21px}.result-empty img{display:block;max-width:min(75%,560px);max-height:430px;margin:auto;object-fit:contain}.campaign-status{min-height:22px;margin:13px 0;color:#b8dfa5;font-size:13px;line-height:1.45}.result-actions{display:flex;gap:8px;flex-wrap:wrap}.result-actions .btn{min-height:42px}.campaign-set{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:12px}.campaign-set div{padding:12px;border:1px solid #303830;border-radius:9px}.campaign-set b,.campaign-set span{display:block}.campaign-set span{margin-top:4px;color:#879184;font-size:11px}.motion-player{min-height:600px}.settings-used{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:14px 0 0}.settings-used div{padding:10px;border:1px solid #2c342b;border-radius:9px}.settings-used dt{color:#778174;font-size:10px;text-transform:uppercase;letter-spacing:.08em}.settings-used dd{margin:5px 0 0;font-size:12px}.campaign-page [hidden]{display:none!important}.campaign-page button:disabled{opacity:.42;cursor:not-allowed}.campaign-page :focus-visible{outline:2px solid var(--accent,var(--accent));outline-offset:3px}

.tech-shell{display:grid;grid-template-columns:minmax(0,1fr) 390px;gap:22px;align-items:start}.tech-editor{display:grid;gap:16px;min-width:0}.tech-card{padding:22px;min-width:0}.tech-card h2{margin:0 0 14px;font-size:16px;letter-spacing:.03em}.tech-card h3{margin:0 0 10px;color:#aeb7ac;font-size:12px;text-transform:uppercase;letter-spacing:.08em}.form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 12px}.color-field{display:grid;grid-template-columns:52px 1fr;gap:6px}.color-field input[type=color]{padding:3px;height:42px}.size-set{display:flex;gap:14px;flex-wrap:wrap;margin:14px 0 0;padding:14px;border:1px solid #2d342d;border-radius:10px}.size-set legend{padding:0 6px;color:#aeb7ac;font-size:12px}.size-set label{display:flex;align-items:center;gap:5px;font-size:12px}.size-set input{accent-color:var(--accent,var(--accent))}.tech-upload-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.tech-upload{padding:12px;border:1px solid #293029;border-radius:12px;background:#0c0f0c}.tech-upload .campaign-drop{min-height:118px}.art-analysis{display:grid;gap:3px;margin-top:8px;color:#879284;font-size:11px}.art-analysis b{color:#cbd4c8}.section-title{display:flex;align-items:start;justify-content:space-between;gap:18px}.section-title .btn{flex:0 0 auto}.table-scroll{max-width:100%;overflow:auto;border:1px solid #2b322b;border-radius:10px}.tech-table{width:100%;border-collapse:collapse;min-width:990px;font-size:11px}.tech-table th,.tech-table td{padding:7px;border-bottom:1px solid #272d27;text-align:left}.tech-table th{color:#9faa9c;white-space:nowrap}.tech-table input,.tech-table select{padding:7px;border-radius:6px;font-size:11px}.measure-table{min-width:820px}.measure-table th:first-child{width:180px}.color-rows{display:grid;gap:8px}.color-row{display:grid;grid-template-columns:44px repeat(5,minmax(90px,1fr)) 40px;gap:7px;align-items:end;padding:10px;border:1px solid #293029;border-radius:10px}.color-row>input[type=color]{height:42px;padding:3px}.color-row label{display:grid;gap:5px;color:#8e998c;font-size:10px}.notes-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 12px}.notes-grid textarea{min-height:105px;resize:vertical}.tech-preview-wrap{position:sticky;top:82px;padding:16px}.tech-preview{overflow:hidden;border:1px solid #343b34;border-radius:12px;background:#eef1eb;color:#0a0d0a}.tech-preview-head{padding:20px;background:#111511;color:white}.tech-preview-head small{color:var(--accent,var(--accent));font-size:9px;letter-spacing:.12em}.tech-preview-head h2{margin:8px 0;font-size:22px;line-height:1.1}.tech-preview-head p{margin:0;color:#9da69b;font-size:11px}.garment-pair{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:#ccd1c9}.garment-pair article{display:flex;flex-direction:column;align-items:center;padding:10px;background:#e7eae4;text-align:center}.garment-pair svg{width:100%;height:auto}.garment-pair b{font-size:10px;letter-spacing:.11em}.garment-pair span{margin-top:4px;color:#596057;font-size:8px}.tech-summary{display:grid;grid-template-columns:1fr 1fr;margin:0;padding:13px;gap:9px}.tech-summary div{border-bottom:1px solid #cbd0c8;padding-bottom:7px}.tech-summary dt{color:#727970;font-size:8px;text-transform:uppercase}.tech-summary dd{margin:3px 0 0;font-size:10px}.tech-warnings{padding:12px;background:#fff4db;border-top:1px solid #e1c27f}.tech-warnings b{font-size:10px;text-transform:uppercase}.tech-warnings p{margin:6px 0;font-size:9px;line-height:1.35}.tech-warnings small{font-size:8px;color:#765f30}.tech-actions{display:grid;grid-template-columns:1fr 1fr;gap:7px}.tech-actions .btn{white-space:normal}.mini-ad,.mini-film,.mini-tech{position:absolute;inset:13%;display:grid;place-content:center;border:1px solid #d5dbd133;border-radius:10px;background:#0b0e0b;color:#e9f1e5;text-align:center}.mini-ad b,.mini-tech b{font-size:clamp(20px,3vw,42px);letter-spacing:-.05em}.mini-ad i{width:80px;height:90px;margin:10px auto;background:linear-gradient(145deg,#303b2c,var(--accent));clip-path:polygon(20% 0,80% 0,100% 26%,78% 100%,22% 100%,0 26%)}.mini-ad span,.mini-tech span{color:var(--accent,var(--accent));font-size:9px;letter-spacing:.12em}.mini-film{grid-template-columns:repeat(3,1fr);gap:5px;padding:12px}.mini-film i{width:45px;height:80px;border-radius:3px;background:linear-gradient(160deg,#506049,#101510)}.mini-film b{grid-column:1/-1;color:var(--accent,var(--accent));font-size:11px}.mini-tech{place-content:stretch;padding:13%;text-align:left}.mini-tech i{display:block;margin:10px 0;border:1px solid #53604f;background:repeating-linear-gradient(0deg,transparent 0 10px,#ffffff17 11px 12px);height:70px}

@media(max-width:1100px){.tech-shell{grid-template-columns:1fr}.tech-preview-wrap{position:static}.campaign-layout{grid-template-columns:310px minmax(0,1fr)}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.campaign-page{padding:18px 13px 100px}.campaign-head{display:block}.campaign-head>.btn{margin-top:15px;width:100%}.campaign-layout{grid-template-columns:1fr}.campaign-controls{max-height:none;overflow:visible}.campaign-stage{order:-1;padding:11px}.compare,.motion-player{min-height:50svh;max-height:64svh}.compare canvas,.motion-player canvas{max-height:62svh}.result-empty{padding:18px}.result-empty b{font-size:18px}.preset-grid{max-height:none}.result-actions{display:grid;grid-template-columns:1fr 1fr}.campaign-set{grid-template-columns:1fr 1fr}.settings-used{grid-template-columns:1fr 1fr}.tech-card{padding:15px}.form-grid,.tech-upload-grid,.notes-grid{grid-template-columns:1fr}.tech-upload-grid{gap:8px}.color-row{grid-template-columns:42px 1fr 1fr}.color-row label:nth-of-type(n+3){grid-column:span 1}.color-row>button{grid-column:3}.section-title{align-items:stretch;flex-direction:column}.section-title .btn{width:100%}.tech-actions{position:sticky;bottom:76px;z-index:4;padding:8px;border:1px solid #384438;border-radius:12px;background:#0b0e0bf2;backdrop-filter:blur(12px)}.tech-preview-wrap{padding:11px}.campaign-controls input,.campaign-controls select,.campaign-controls textarea,.form-grid input,.form-grid select,.notes-grid textarea{font-size:16px;min-height:45px}.motion-player{min-height:58svh}.mini-film i{width:30px;height:60px}}
@media print{body *{visibility:hidden!important}.tech-preview-wrap,.tech-preview-wrap *{visibility:visible!important}.tech-preview-wrap{position:absolute!important;inset:0!important;border:0!important;background:white!important}.tech-actions,.tech-preview-wrap>.campaign-status,.tech-preview-wrap>.privacy-note{display:none!important}.tech-preview{width:190mm!important;margin:auto!important}}
@media(prefers-reduced-motion:reduce){.campaign-drop,.campaign-page .btn{transition:none!important}}
